Compare commits
3 commits
9bdda6bfba
...
e85b6af95b
Author | SHA1 | Date | |
---|---|---|---|
e85b6af95b | |||
9be6eef517 | |||
df9a38e03d |
6 changed files with 146 additions and 137 deletions
|
@ -4,7 +4,6 @@
|
||||||
| ------- | ------- | ---------------------------------------- |
|
| ------- | ------- | ---------------------------------------- |
|
||||||
| marr | x86_64 | Laptop Workstation |
|
| marr | x86_64 | Laptop Workstation |
|
||||||
| brontes | x86_64 | Desktop Workstation |
|
| brontes | x86_64 | Desktop Workstation |
|
||||||
| styrax | x86_64 | |
|
|
||||||
| raptus | x86_64 | |
|
| raptus | x86_64 | |
|
||||||
| nihilus | aarch64 | Small Pi used to make "off-site" backups |
|
| nihilus | aarch64 | Small Pi used to make "off-site" backups |
|
||||||
|
|
||||||
|
|
42
flake.lock
generated
42
flake.lock
generated
|
@ -52,11 +52,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1737038063,
|
"lastModified": 1740485968,
|
||||||
"narHash": "sha256-rMEuiK69MDhjz1JgbaeQ9mBDXMJ2/P8vmOYRbFndXsk=",
|
"narHash": "sha256-WK+PZHbfDjLyveXAxpnrfagiFgZWaTJglewBWniTn2Y=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "disko",
|
"repo": "disko",
|
||||||
"rev": "bf0abfde48f469c256f2b0f481c6281ff04a5db2",
|
"rev": "19c1140419c4f1cdf88ad4c1cfb6605597628940",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -88,11 +88,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736143030,
|
"lastModified": 1740872218,
|
||||||
"narHash": "sha256-+hu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU=",
|
"narHash": "sha256-ZaMw0pdoUKigLpv9HiNDH2Pjnosg7NBYMJlHTIsHEUo=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "b905f6fc23a9051a6e1b741e1438dbfc0634c6de",
|
"rev": "3876f6b87db82f33775b1ef5ea343986105db764",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -163,11 +163,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1737619027,
|
"lastModified": 1740199244,
|
||||||
"narHash": "sha256-jEzZs9dHdmVP5X9HCC/7jrv08aWFfqZV5cZ+cZWYGA4=",
|
"narHash": "sha256-BiNUbNWLcG8AuKiAZmJ8tS+fr+JO8vGwB7QQ54cezKk=",
|
||||||
"owner": "feel-co",
|
"owner": "feel-co",
|
||||||
"repo": "hjem",
|
"repo": "hjem",
|
||||||
"rev": "48cfa21987672a31a358b7e4d582fc174556e633",
|
"rev": "829109220c14352990bee4cf092f4918f45fb6a1",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -186,11 +186,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1740423947,
|
"lastModified": 1740813707,
|
||||||
"narHash": "sha256-TLUC9rkFZBvKSnNtrdkHY0NsnKmW6XYRIdje6Yt2b3w=",
|
"narHash": "sha256-68aj7BGtwU3lTDupA1pvVrOxOswqIvnXWRCHkJyBSvk=",
|
||||||
"owner": "nydragon",
|
"owner": "nydragon",
|
||||||
"repo": "hjem-rum",
|
"repo": "hjem-rum",
|
||||||
"rev": "de016de0f8e602529f88c0dbd840e4091b566f3f",
|
"rev": "04a953ecd7ce494f7528bede04d5705f119319c8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -206,11 +206,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1737762889,
|
"lastModified": 1740845322,
|
||||||
"narHash": "sha256-5HGG09bh/Yx0JA8wtBMAzt0HMCL1bYZ93x4IqzVExio=",
|
"narHash": "sha256-AXEgFj3C0YJhu9k1OhbRhiA6FnDr81dQZ65U3DhaWpw=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "daf04c5950b676f47a794300657f1d3d14c1a120",
|
"rev": "fcac3d6d88302a5e64f6cb8014ac785e08874c8d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -221,11 +221,11 @@
|
||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1737751639,
|
"lastModified": 1740646007,
|
||||||
"narHash": "sha256-ZEbOJ9iT72iwqXsiEMbEa8wWjyFvRA9Ugx8utmYbpz4=",
|
"narHash": "sha256-dMReDQobS3kqoiUCQIYI9c0imPXRZnBubX20yX/G5LE=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "dfad538f751a5aa5d4436d9781ab27a6128ec9d4",
|
"rev": "009b764ac98a3602d41fc68072eeec5d24fc0e49",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -265,11 +265,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1737885589,
|
"lastModified": 1740828860,
|
||||||
"narHash": "sha256-Zf0hSrtzaM1DEz8//+Xs51k/wdSajticVrATqDrfQjg=",
|
"narHash": "sha256-cjbHI+zUzK5CPsQZqMhE3npTyYFt9tJ3+ohcfaOF/WM=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "852ff1d9e153d8875a83602e03fdef8a63f0ecf8",
|
"rev": "303bd8071377433a2d8f76e684ec773d70c5b642",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
inherit (lib) mapAttrsToList mkIf hasAttr;
|
inherit (lib) mapAttrsToList mkIf hasAttr;
|
||||||
inherit (lib.my) getExe;
|
inherit (lib.my) getExe getExe';
|
||||||
in
|
in
|
||||||
mkIf osConfig.programs.hyprland.enable {
|
mkIf osConfig.programs.hyprland.enable {
|
||||||
home.sessionVariables.ELECTRON_OZONE_PLATFORM_HINT = "auto";
|
home.sessionVariables.ELECTRON_OZONE_PLATFORM_HINT = "auto";
|
||||||
|
@ -146,71 +146,78 @@ mkIf osConfig.programs.hyprland.enable {
|
||||||
disable_hyprland_logo = false;
|
disable_hyprland_logo = false;
|
||||||
focus_on_activate = false; # Open windows without focusing them
|
focus_on_activate = false; # Open windows without focusing them
|
||||||
new_window_takes_over_fullscreen = 2; # When a new window opens, the current fullscreen window returns to its tiled state
|
new_window_takes_over_fullscreen = 2; # When a new window opens, the current fullscreen window returns to its tiled state
|
||||||
|
key_press_enables_dpms = true;
|
||||||
|
mouse_move_enables_dpms = true;
|
||||||
|
disable_autoreload = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
bindm = [ "$mod,mouse:272,movewindow" ];
|
bindm = [ "$mod,mouse:272,movewindow" ];
|
||||||
|
|
||||||
bind = [
|
bind =
|
||||||
"$mod, D, exec, ${getExe osConfig.modules.system.roles.desktop.runner.package}"
|
let
|
||||||
"$mod, E, exec, ${getExe osConfig.modules.system.roles.desktop.filemanager}"
|
copy = getExe' pkgs.wl-clipboard "wl-copy";
|
||||||
"$mod, Return, exec, ${getExe osConfig.modules.system.roles.desktop.terminal}"
|
in
|
||||||
"$mod SHIFT, Q, killactive,"
|
[
|
||||||
"$mod, V, togglefloating"
|
"$mod, D, exec, ${getExe osConfig.modules.system.roles.desktop.runner.package}"
|
||||||
"$mod SHIFT, P, exec, ${config.programs.rofi.package}/bin/rofi -show p -modi p:${pkgs.rofi-power-menu}/bin/rofi-power-menu"
|
"$mod, E, exec, ${getExe osConfig.modules.system.roles.desktop.filemanager}"
|
||||||
"$mod, P, exec, ${getExe pkgs.cliphist} wipe & ${getExe pkgs.hyprlock}"
|
"$mod, Return, exec, ${getExe osConfig.modules.system.roles.desktop.terminal}"
|
||||||
"$mod SHIFT, C, exec, hyprctl reload"
|
"$mod SHIFT, Q, killactive,"
|
||||||
"$mod SHIFT, space, togglefloating"
|
"$mod, V, togglefloating"
|
||||||
"$mod, left, movefocus, l"
|
"$mod SHIFT, P, exec, ${getExe pkgs.scripts.powerMenu}"
|
||||||
"$mod, right, movefocus, r"
|
"$mod, P, exec, ${getExe pkgs.cliphist} wipe & ${getExe pkgs.hyprlock}"
|
||||||
"$mod, up, movefocus, u"
|
"$mod SHIFT, C, exec, hyprctl reload"
|
||||||
"$mod, down, movefocus, d"
|
"$mod SHIFT, space, togglefloating"
|
||||||
|
"$mod, left, movefocus, l"
|
||||||
|
"$mod, right, movefocus, r"
|
||||||
|
"$mod, up, movefocus, u"
|
||||||
|
"$mod, down, movefocus, d"
|
||||||
|
|
||||||
# Example special workspace (scratchpad)
|
# Example special workspace (scratchpad)
|
||||||
"$mod, S, togglespecialworkspace, magic"
|
"$mod, S, togglespecialworkspace, magic"
|
||||||
"$mod SHIFT, S, movetoworkspace, special:magic"
|
"$mod SHIFT, S, movetoworkspace, special:magic"
|
||||||
"$mod, X, fullscreen, 1"
|
"$mod, X, fullscreen, 1"
|
||||||
"$mod, F, fullscreen, 0"
|
"$mod, F, fullscreen, 0"
|
||||||
"$mod, N, exec, ${pkgs.swaynotificationcenter}/bin/swaync-client -t"
|
"$mod, N, exec, ${pkgs.swaynotificationcenter}/bin/swaync-client -t"
|
||||||
"$mod, U, exec, ${pkgs.hyprshot}/bin/hyprshot -z -o $XDG_PICTURES_DIR/screenshots -m region"
|
"$mod, U, exec, ${pkgs.hyprshot}/bin/hyprshot -o ${config.xdg.userDirs.pictures}/screenshots -m region"
|
||||||
"$mod SHIFT, U, exec, ${pkgs.hyprshot}/bin/hyprshot -z --raw -m region | ${pkgs.satty}/bin/satty -f - --fullscreen"
|
"$mod SHIFT, U, exec, ${pkgs.hyprshot}/bin/hyprshot --raw -m region | ${getExe pkgs.satty} -f - --fullscreen --copy-command ${copy}"
|
||||||
|
|
||||||
#: Brightness and Media {{{
|
#: Brightness and Media {{{
|
||||||
",XF86MonBrightnessUp, exec, ${pkgs.brightnessctl}/bin/brightnessctl s +10%"
|
",XF86MonBrightnessUp, exec, ${pkgs.brightnessctl}/bin/brightnessctl s +10%"
|
||||||
",XF86MonBrightnessDown, exec, ${pkgs.brightnessctl}/bin/brightnessctl s 10%-"
|
",XF86MonBrightnessDown, exec, ${pkgs.brightnessctl}/bin/brightnessctl s 10%-"
|
||||||
",XF86AudioRaiseVolume, exec, ${pkgs.pamixer}/bin/pamixer -i 5"
|
",XF86AudioRaiseVolume, exec, ${getExe pkgs.pamixer} -u && ${pkgs.pamixer}/bin/pamixer -i 5"
|
||||||
",XF86AudioLowerVolume, exec, ${pkgs.pamixer}/bin/pamixer -d 5"
|
",XF86AudioLowerVolume, exec, ${getExe pkgs.pamixer} -u && ${pkgs.pamixer}/bin/pamixer -d 5"
|
||||||
",XF86AudioMicMute, exec, ${pkgs.pamixer}/bin/pamixer --default-source -m"
|
",XF86AudioMicMute, exec, ${pkgs.pamixer}/bin/pamixer --default-source -m"
|
||||||
",XF86AudioMute, exec, ${pkgs.pamixer}/bin/pamixer -t"
|
",XF86AudioMute, exec, ${pkgs.pamixer}/bin/pamixer -t"
|
||||||
",XF86AudioPlay, exec, ${pkgs.playerctl}/bin/playerctl play-pause"
|
",XF86AudioPlay, exec, ${pkgs.playerctl}/bin/playerctl play-pause"
|
||||||
",XF86AudioPause, exec, ${pkgs.playerctl}/bin/playerctl play-pause"
|
",XF86AudioPause, exec, ${pkgs.playerctl}/bin/playerctl play-pause"
|
||||||
",XF86AudioNext, exec, ${pkgs.playerctl}/bin/playerctl next"
|
",XF86AudioNext, exec, ${pkgs.playerctl}/bin/playerctl next"
|
||||||
",XF86AudioPrev, exec, ${pkgs.playerctl}/bin/playerctl previous"
|
",XF86AudioPrev, exec, ${pkgs.playerctl}/bin/playerctl previous"
|
||||||
#: }}}
|
#: }}}
|
||||||
|
|
||||||
# Workspaces
|
# Workspaces
|
||||||
"$mod, code:10, workspace, 1"
|
"$mod, code:10, workspace, 1"
|
||||||
"$mod, code:11, workspace, 2"
|
"$mod, code:11, workspace, 2"
|
||||||
"$mod, code:12, workspace, 3"
|
"$mod, code:12, workspace, 3"
|
||||||
"$mod, code:13, workspace, 4"
|
"$mod, code:13, workspace, 4"
|
||||||
"$mod, code:14, workspace, 5"
|
"$mod, code:14, workspace, 5"
|
||||||
"$mod, code:15, workspace, 6"
|
"$mod, code:15, workspace, 6"
|
||||||
"$mod, code:16, workspace, 7"
|
"$mod, code:16, workspace, 7"
|
||||||
"$mod, code:17, workspace, 8"
|
"$mod, code:17, workspace, 8"
|
||||||
"$mod, code:18, workspace, 9"
|
"$mod, code:18, workspace, 9"
|
||||||
"$mod, code:19, workspace, 10"
|
"$mod, code:19, workspace, 10"
|
||||||
|
|
||||||
# Send to Workspaces
|
# Send to Workspaces
|
||||||
"$mod SHIFT, code:10, movetoworkspace, 1"
|
"$mod SHIFT, code:10, movetoworkspace, 1"
|
||||||
"$mod SHIFT, code:11, movetoworkspace, 2"
|
"$mod SHIFT, code:11, movetoworkspace, 2"
|
||||||
"$mod SHIFT, code:12, movetoworkspace, 3"
|
"$mod SHIFT, code:12, movetoworkspace, 3"
|
||||||
"$mod SHIFT, code:13, movetoworkspace, 4"
|
"$mod SHIFT, code:13, movetoworkspace, 4"
|
||||||
"$mod SHIFT, code:14, movetoworkspace, 5"
|
"$mod SHIFT, code:14, movetoworkspace, 5"
|
||||||
"$mod SHIFT, code:15, movetoworkspace, 6"
|
"$mod SHIFT, code:15, movetoworkspace, 6"
|
||||||
"$mod SHIFT, code:16, movetoworkspace, 7"
|
"$mod SHIFT, code:16, movetoworkspace, 7"
|
||||||
"$mod SHIFT, code:17, movetoworkspace, 8"
|
"$mod SHIFT, code:17, movetoworkspace, 8"
|
||||||
"$mod SHIFT, code:18, movetoworkspace, 9"
|
"$mod SHIFT, code:18, movetoworkspace, 9"
|
||||||
"$mod SHIFT, code:19, movetoworkspace, 10"
|
"$mod SHIFT, code:19, movetoworkspace, 10"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
{
|
{
|
||||||
pkgs,
|
pkgs,
|
||||||
config,
|
config,
|
||||||
inputs',
|
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
|
@ -116,17 +115,16 @@ in
|
||||||
users = {
|
users = {
|
||||||
defaultUserShell = pkgs.fish;
|
defaultUserShell = pkgs.fish;
|
||||||
users.${username} = {
|
users.${username} = {
|
||||||
packages = [
|
|
||||||
inputs'.nur.packages.grayjay-desktop
|
|
||||||
];
|
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
createHome = true;
|
createHome = true;
|
||||||
|
packages = with pkgs; [
|
||||||
|
prismlauncher
|
||||||
|
orca-slicer
|
||||||
|
];
|
||||||
extraGroups = [
|
extraGroups = [
|
||||||
"networkmanager"
|
"networkmanager"
|
||||||
"wheel"
|
|
||||||
"audio"
|
"audio"
|
||||||
"libvirtd" # VM OPs
|
"libvirtd" # VM OPs
|
||||||
"dialout" # Necessary for serial port interactions
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
{
|
{
|
||||||
pkgs,
|
|
||||||
config,
|
config,
|
||||||
inputs,
|
inputs,
|
||||||
...
|
...
|
||||||
|
@ -36,55 +35,8 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
stateVersion = config.system.stateVersion;
|
inherit (config.system) stateVersion;
|
||||||
inherit username;
|
inherit username;
|
||||||
|
|
||||||
packages = with pkgs; [
|
|
||||||
keepassxc
|
|
||||||
digikam
|
|
||||||
fragments
|
|
||||||
element-desktop
|
|
||||||
libreoffice
|
|
||||||
loupe
|
|
||||||
seahorse
|
|
||||||
gimp
|
|
||||||
pwvucontrol
|
|
||||||
thunderbird
|
|
||||||
keepassxc
|
|
||||||
protonmail-bridge-gui
|
|
||||||
varia
|
|
||||||
signal-desktop
|
|
||||||
tagger
|
|
||||||
prismlauncher
|
|
||||||
orca-slicer
|
|
||||||
|
|
||||||
kid3
|
|
||||||
soundconverter
|
|
||||||
|
|
||||||
# proprietary
|
|
||||||
obsidian
|
|
||||||
|
|
||||||
# CLI tools
|
|
||||||
jhead
|
|
||||||
fdupes
|
|
||||||
exiftool
|
|
||||||
sshfs
|
|
||||||
lazygit
|
|
||||||
wl-clipboard
|
|
||||||
|
|
||||||
# custom
|
|
||||||
nysh
|
|
||||||
scripts.nixedit
|
|
||||||
scripts.set-background
|
|
||||||
scripts.fishl
|
|
||||||
scripts.nrun
|
|
||||||
scripts.rpaste
|
|
||||||
scripts.genswitch
|
|
||||||
scripts.gentest
|
|
||||||
scripts.editsym
|
|
||||||
scripts.deployswitch
|
|
||||||
scripts.deploytest
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,16 @@
|
||||||
{ lib, ... }:
|
{
|
||||||
|
lib,
|
||||||
|
inputs',
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
inherit (config.modules.meta) username;
|
||||||
|
in
|
||||||
{
|
{
|
||||||
hjem = {
|
hjem = {
|
||||||
users.ny = {
|
users.${username} = {
|
||||||
enable = true;
|
enable = true;
|
||||||
imports = [ ./programs ];
|
imports = [ ./programs ];
|
||||||
};
|
};
|
||||||
|
@ -10,4 +19,48 @@
|
||||||
};
|
};
|
||||||
clobberByDefault = true;
|
clobberByDefault = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
users.users.${username}.packages =
|
||||||
|
[
|
||||||
|
inputs'.nur.packages.grayjay-desktop
|
||||||
|
]
|
||||||
|
++ (with pkgs; [
|
||||||
|
keepassxc
|
||||||
|
digikam
|
||||||
|
fragments
|
||||||
|
element-desktop
|
||||||
|
libreoffice
|
||||||
|
loupe
|
||||||
|
seahorse
|
||||||
|
pwvucontrol
|
||||||
|
thunderbird
|
||||||
|
keepassxc
|
||||||
|
protonmail-bridge-gui
|
||||||
|
signal-desktop
|
||||||
|
tagger
|
||||||
|
kid3
|
||||||
|
|
||||||
|
# proprietary
|
||||||
|
obsidian
|
||||||
|
|
||||||
|
# CLI tools
|
||||||
|
jhead
|
||||||
|
fdupes
|
||||||
|
exiftool
|
||||||
|
sshfs
|
||||||
|
wl-clipboard
|
||||||
|
|
||||||
|
# custom
|
||||||
|
nysh
|
||||||
|
scripts.nixedit
|
||||||
|
scripts.set-background
|
||||||
|
scripts.fishl
|
||||||
|
scripts.nrun
|
||||||
|
scripts.rpaste
|
||||||
|
scripts.genswitch
|
||||||
|
scripts.gentest
|
||||||
|
scripts.editsym
|
||||||
|
scripts.deployswitch
|
||||||
|
scripts.deploytest
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue