feat: expanded desktop configuration options

Created sensible default waybar configuration

Enabled fish z plugins (NOTE: include git plugin next time)

DEFUNCT: Created wechat package that includes a license archive to circumvent restrictions
This commit is contained in:
Zhongheng Liu 2024-08-11 19:52:35 +08:00
commit c3500f337e
No known key found for this signature in database
4 changed files with 61 additions and 28 deletions

View file

@ -3,22 +3,47 @@
pkgs, pkgs,
... ...
}: { }: {
home.packages = with pkgs; [ home.packages = with pkgs; [foot];
foot programs.waybar = {
]; enable = true;
settings = [
{
layer = "top";
position = "top";
height = 30;
output = ["eDP-1" "HDMI-A-1"];
modules-left = ["hyprland/window" "wlr/taskbar" "cpu" "memory" "idle-inhibitor"];
modules-center = ["hyprland/workspaces" "custom/hello-from-waybar"];
modules-right = ["mpd" "custom/mymodule#with-css-id" "temperature" "battery"];
"hyprland/workspaces" = {
disable-scroll = true;
all-outputs = true;
};
"custom/hello-from-waybar" = {
format = "hello {}";
max-length = 40;
interval = "once";
exec = pkgs.writeShellScript "hello-from-waybar" ''
echo "from within waybar"
'';
};
}
];
systemd.enable = true;
systemd.target = "hyprland-session.target";
};
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
# Whether to enable Hyprland wayland compositor # Whether to enable Hyprland wayland compositor
enable = true; enable = true;
# The hyprland package to use # The hyprland package to use
package = pkgs.hyprland; package = pkgs.hyprland;
plugins = with pkgs.hyprlandPlugins; [ plugins = with pkgs.hyprlandPlugins; [hyprfocus csgo-vulkan-fix];
hyprbars
hyprfocus
csgo-vulkan-fix
];
# Whether to enable XWayland # Whether to enable XWayland
xwayland.enable = true; xwayland.enable = true;
settings = { settings = {
monitor = ",preferred,auto,1.6";
input = { input = {
# xset rate 250 50 replacement on wayland... # xset rate 250 50 replacement on wayland...
# FAST MODE LET'S GOOO # FAST MODE LET'S GOOO
@ -33,6 +58,8 @@
"$mod" = "SUPER"; "$mod" = "SUPER";
bind = bind =
[ [
", Print, exec, ${pkgs.grimblast}/bin/grimblast copy area"
"$mod, S, togglespecialworkspace"
"$mod, F10, exec, ${pkgs.pamixer} --increase 10" "$mod, F10, exec, ${pkgs.pamixer} --increase 10"
"$mod, F9, exec, ${pkgs.pamixer} --decrease 10" "$mod, F9, exec, ${pkgs.pamixer} --decrease 10"
"$mod, Q, killactive" "$mod, Q, killactive"
@ -45,17 +72,12 @@
++ ( ++ (
# workspaces # workspaces
# binds $mod + [shift +] {1..10} to [move to] workspace {1..10} # binds $mod + [shift +] {1..10} to [move to] workspace {1..10}
builtins.concatLists (builtins.genList ( builtins.concatLists (builtins.genList (x: let
x: let ws = let c = (x + 1) / 10; in builtins.toString (x + 1 - (c * 10));
ws = let in [
c = (x + 1) / 10; "$mod, ${ws}, workspace, ${toString (x + 1)}"
in "$mod SHIFT, ${ws}, movetoworkspace, ${toString (x + 1)}"
builtins.toString (x + 1 - (c * 10)); ])
in [
"$mod, ${ws}, workspace, ${toString (x + 1)}"
"$mod SHIFT, ${ws}, movetoworkspace, ${toString (x + 1)}"
]
)
10) 10)
); );
bindm = [ bindm = [

View file

@ -16,16 +16,19 @@ in
programs.fish = { programs.fish = {
enable = true; enable = true;
shellAliases = import ./aliases {inherit pkgs;}; shellAliases = import ./aliases {inherit pkgs;};
interactiveShellInit = ''
${pkgs.zoxide}/bin/zoxide init fish | source
'';
plugins = [ plugins = [
#{ {
# name = "z"; name = "z";
# src = pkgs.fetchFromGitHub { src = pkgs.fetchFromGitHub {
# owner = "jethrokuan"; owner = "jethrokuan";
# repo = "z"; repo = "z";
# rev = "ddeb28a7b6a1f0ec6dae40c636e5ca4908ad160a"; rev = "ddeb28a7b6a1f0ec6dae40c636e5ca4908ad160a";
# sha256 = "0c5i7sdrsp0q3vbziqzdyqn4fmp235ax4mn4zslrswvn8g3fvdyh"; sha256 = "0c5i7sdrsp0q3vbziqzdyqn4fmp235ax4mn4zslrswvn8g3fvdyh";
# }; };
#} }
]; ];
}; };
}; };

View file

@ -0,0 +1,8 @@
{pkgs, ...}: {
nixpkgs.config.permittedInsecurePackages = [
"openssl-1.1.1w"
];
home.packages = with pkgs; [
(wechat-uos.override {uosLicense = ./license.tar.gz;})
];
}

Binary file not shown.