Compare commits
9 Commits
ce68c8c03e
...
ac7e7a16d8
Author | SHA1 | Date | |
---|---|---|---|
ac7e7a16d8 | |||
a79c1a9af8 | |||
63dc618f6d | |||
7d10c8e7d2 | |||
7254e9a6e2 | |||
ae0f6ec0ef | |||
f1be4c1fc5 | |||
37421bcc12 | |||
e3eaebf08d |
120
flake.lock
generated
120
flake.lock
generated
@ -3,11 +3,11 @@
|
|||||||
"alacritty-theme": {
|
"alacritty-theme": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725333321,
|
"lastModified": 1727478331,
|
||||||
"narHash": "sha256-cZ+ziE+VbQFpJ+iDS7X9Q2YC1Ziu+JITzDmX79BCcRY=",
|
"narHash": "sha256-Uav3hn2HxwtpOWdGt8WDCqTR0erxXWF6Wxkcltru1Yw=",
|
||||||
"owner": "alacritty",
|
"owner": "alacritty",
|
||||||
"repo": "alacritty-theme",
|
"repo": "alacritty-theme",
|
||||||
"rev": "e759dafb8e2e00abb428592979ce006da7fba4a7",
|
"rev": "90a8406beb095fdb1617135a98c38df1ef08859c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -36,11 +36,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726665257,
|
"lastModified": 1727261104,
|
||||||
"narHash": "sha256-rEzEZtd3iyVo5RJ1OGujOlnywNf3gsrOnjAn1NLciD4=",
|
"narHash": "sha256-rxDI7WrxIRV9it9mDCHcLa7xQykf1JloXnoXr5xQ8zI=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "aquamarine",
|
"repo": "aquamarine",
|
||||||
"rev": "752d0fbd141fabb5a1e7f865199b80e6e76f8d8e",
|
"rev": "b82fdaff917582a9d568969e15e61b398c71e990",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -341,11 +341,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1722623071,
|
"lastModified": 1727532803,
|
||||||
"narHash": "sha256-sLADpVgebpCBFXkA1FlCXtvEPu1tdEsTfqK1hfeHySE=",
|
"narHash": "sha256-ZaZ7h7PY8mQc4vtGmVqWLAq9CAO02gHMyNR5yY8zDmM=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprcursor",
|
"repo": "hyprcursor",
|
||||||
"rev": "912d56025f03d41b1ad29510c423757b4379eb1c",
|
"rev": "b98726e431d4d3ed58bd58bee1047cdb81cec69f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -358,6 +358,7 @@
|
|||||||
"inputs": {
|
"inputs": {
|
||||||
"aquamarine": "aquamarine",
|
"aquamarine": "aquamarine",
|
||||||
"hyprcursor": "hyprcursor",
|
"hyprcursor": "hyprcursor",
|
||||||
|
"hyprland-protocols": "hyprland-protocols",
|
||||||
"hyprlang": "hyprlang",
|
"hyprlang": "hyprlang",
|
||||||
"hyprutils": "hyprutils",
|
"hyprutils": "hyprutils",
|
||||||
"hyprwayland-scanner": "hyprwayland-scanner",
|
"hyprwayland-scanner": "hyprwayland-scanner",
|
||||||
@ -366,11 +367,11 @@
|
|||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1727305730,
|
"lastModified": 1728086481,
|
||||||
"narHash": "sha256-EWtisVQG1O058U09R3GTmzWWujuHYmyiKbpb9qE3Z9Q=",
|
"narHash": "sha256-+gip/MU9xo/0HzYotsJ28LvCBTsoWlr3h4+vZR3Uycw=",
|
||||||
"ref": "refs/heads/main",
|
"ref": "refs/heads/main",
|
||||||
"rev": "b1ad2d806634edff656cb5ddc9850ae2c73324e8",
|
"rev": "595eb89f6e16df0e19916e3c02bf5ceac5a61c57",
|
||||||
"revCount": 5260,
|
"revCount": 5293,
|
||||||
"submodules": true,
|
"submodules": true,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/hyprwm/Hyprland"
|
"url": "https://github.com/hyprwm/Hyprland"
|
||||||
@ -398,11 +399,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1727258890,
|
"lastModified": 1727705521,
|
||||||
"narHash": "sha256-/55TVManE/J19LSzXtUNhHUpeouRqZxM08ZdWvJrNoA=",
|
"narHash": "sha256-tR4bc6zONkxore1F7CRrwHs9NITht8NY0JTidPSmMXY=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprland-plugins",
|
"repo": "hyprland-plugins",
|
||||||
"rev": "4fcb465c9d771f4ae1f451e8d953250d16eead70",
|
"rev": "9215288eb2ded9d0c08d468ea90ba68f43162c67",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -412,6 +413,31 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"hyprland-protocols": {
|
"hyprland-protocols": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprland",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"hyprland",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1727451107,
|
||||||
|
"narHash": "sha256-qV9savtHwmZUa0eJE294WYJjKPGB2+bJhwByFShsVyo=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprland-protocols",
|
||||||
|
"rev": "6b3261ee13a6d2b99de79a31d352f6996e35bde3",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprland-protocols",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"hyprland-protocols_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"hyprland",
|
"hyprland",
|
||||||
@ -479,11 +505,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1727219120,
|
"lastModified": 1727300645,
|
||||||
"narHash": "sha256-wmT+JpnDk6EjgASU2VGfS0nnu6oKA4Cw25o5fzpDD/Q=",
|
"narHash": "sha256-OvAtVLaSRPnbXzOwlR1fVqCXR7i+ICRX3aPMCdIiv+c=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprutils",
|
"repo": "hyprutils",
|
||||||
"rev": "db956287d3aa194dda91d05c8eb286de2a569edf",
|
"rev": "3f5293432b6dc6a99f26aca2eba3876d2660665c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -504,11 +530,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726840673,
|
"lastModified": 1726874836,
|
||||||
"narHash": "sha256-HIPEXyRRVZoqD6U+lFS1B0tsIU7p83FaB9m7KT/x6mQ=",
|
"narHash": "sha256-VKR0sf0PSNCB0wPHVKSAn41mCNVCnegWmgkrneKDhHM=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprwayland-scanner",
|
"repo": "hyprwayland-scanner",
|
||||||
"rev": "b68dab23fc922eae99306988133ee80a40b39ca5",
|
"rev": "500c81a9e1a76760371049a8d99e008ea77aa59e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -543,11 +569,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726227680,
|
"lastModified": 1728031945,
|
||||||
"narHash": "sha256-pcqHXle7uHQTUESc40Yu0k05cFMRVpm3D8ZHPH6scOY=",
|
"narHash": "sha256-NRkLjdMtVfC6dD1gEbYZWFEtbmC2xfD6ft1IP7l76Vw=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "nix-ld",
|
"repo": "nix-ld",
|
||||||
"rev": "5ee22be69d8bd66da100157fab54d8dde37c775b",
|
"rev": "4524c512e8729ccb5a1b9239d01e1474cbf074a2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -564,11 +590,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1727276500,
|
"lastModified": 1728054098,
|
||||||
"narHash": "sha256-k2RdpNq6fQ/lI90s8DOXkpqnl2w9NM/KXqjcR4pZ27c=",
|
"narHash": "sha256-pvVBC+IHWLZqwD+rLTqtXbNgFng8qZZXm+KTyoS5lR8=",
|
||||||
"owner": "doronbehar",
|
"owner": "doronbehar",
|
||||||
"repo": "nix-matlab",
|
"repo": "nix-matlab",
|
||||||
"rev": "7c7564e543e74c021dd6c402df6192d74ff6ee8f",
|
"rev": "145957fbf1490548bac2ee5a58daddf04fcfa5dd",
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -602,11 +628,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726755586,
|
"lastModified": 1727348695,
|
||||||
"narHash": "sha256-PmUr/2GQGvFTIJ6/Tvsins7Q43KTMvMFhvG6oaYK+Wk=",
|
"narHash": "sha256-J+PeFKSDV+pHL7ukkfpVzCOO7mBSrrpJ3svwBFABbhI=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "c04d5652cfa9742b1d519688f65d1bbccea9eb7e",
|
"rev": "1925c603f17fc89f4c8f6bf6f631a802ad85d784",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -665,11 +691,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-unstable": {
|
"nixpkgs-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1727122398,
|
"lastModified": 1728018373,
|
||||||
"narHash": "sha256-o8VBeCWHBxGd4kVMceIayf5GApqTavJbTa44Xcg5Rrk=",
|
"narHash": "sha256-NOiTvBbRLIOe5F6RbHaAh6++BNjsb149fGZd1T4+KBg=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "30439d93eb8b19861ccbe3e581abf97bdc91b093",
|
"rev": "bc947f541ae55e999ffdb4013441347d83b00feb",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -681,11 +707,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1727129439,
|
"lastModified": 1728067476,
|
||||||
"narHash": "sha256-nPyrcFm6FSk7CxzVW4x2hu62aLDghNcv9dX6DF3dXw8=",
|
"narHash": "sha256-/uJcVXuBt+VFCPQIX+4YnYrHaubJSx4HoNsJVNRgANM=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "babc25a577c3310cce57c72d5bed70f4c3c3843a",
|
"rev": "6e6b3dd395c3b1eb9be9f2d096383a8d05add030",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -830,11 +856,11 @@
|
|||||||
"nixpkgs-stable": "nixpkgs-stable_2"
|
"nixpkgs-stable": "nixpkgs-stable_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726524647,
|
"lastModified": 1727734513,
|
||||||
"narHash": "sha256-qis6BtOOBBEAfUl7FMHqqTwRLB61OL5OFzIsOmRz2J4=",
|
"narHash": "sha256-i47LQwoGCVQq4upV2YHV0OudkauHNuFsv306ualB/Sw=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "e2d404a7ea599a013189aa42947f66cede0645c8",
|
"rev": "3198a242e547939c5e659353551b0668ec150268",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -920,7 +946,7 @@
|
|||||||
},
|
},
|
||||||
"xdph": {
|
"xdph": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"hyprland-protocols": "hyprland-protocols",
|
"hyprland-protocols": "hyprland-protocols_2",
|
||||||
"hyprlang": [
|
"hyprlang": [
|
||||||
"hyprland",
|
"hyprland",
|
||||||
"hyprlang"
|
"hyprlang"
|
||||||
@ -943,11 +969,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1727109343,
|
"lastModified": 1727524473,
|
||||||
"narHash": "sha256-1PFckA8Im7wMSl26okwOKqBZeCFLD3LvZZFaxswDhbY=",
|
"narHash": "sha256-1DGktDtSWIJpnDbVoj/qpvJSH5zg6JbOfuh6xqZMap0=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "xdg-desktop-portal-hyprland",
|
"repo": "xdg-desktop-portal-hyprland",
|
||||||
"rev": "4adb6c4c41ee5014bfe608123bfeddb26e5f5cea",
|
"rev": "7e500e679ede40e79cf2d89b5f5fa3e34923bd26",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -959,11 +985,11 @@
|
|||||||
"yazi-flavors": {
|
"yazi-flavors": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725036354,
|
"lastModified": 1728056820,
|
||||||
"narHash": "sha256-W56r4LMepQj0vW1tayx0qA43ZhZEQ09ukZ8IlQMFMe0=",
|
"narHash": "sha256-VSlays/D5FtiI8vsj2Eu19lxY8Mkgu0+7K6OAhzc+30=",
|
||||||
"owner": "yazi-rs",
|
"owner": "yazi-rs",
|
||||||
"repo": "flavors",
|
"repo": "flavors",
|
||||||
"rev": "d479f67a5bde91ccd3cddc927144b442c6e885e5",
|
"rev": "b081fa9768ebd24a71375f85748c26e6a6c7ef44",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -37,9 +37,9 @@
|
|||||||
yazi.enable = true;
|
yazi.enable = true;
|
||||||
emacs.enable = true;
|
emacs.enable = true;
|
||||||
|
|
||||||
i3.enable = true;
|
# i3.enable = true;
|
||||||
|
|
||||||
# hyprland.enable = true;
|
hyprland.enable = true;
|
||||||
nix-helper.enable = true;
|
nix-helper.enable = true;
|
||||||
|
|
||||||
desktop.enable = true;
|
desktop.enable = true;
|
||||||
@ -92,9 +92,11 @@
|
|||||||
tor-browser
|
tor-browser
|
||||||
|
|
||||||
## My scripts
|
## My scripts
|
||||||
pkgs.frajul.deploy-to-pianopi
|
frajul.deploy-to-pianopi
|
||||||
pkgs.frajul.edit-config
|
frajul.open-messaging
|
||||||
# pkgs.frajul.open-messaging
|
frajul.edit-config
|
||||||
|
frajul.xwacomcalibrate
|
||||||
|
frajul.lntocp
|
||||||
]
|
]
|
||||||
++ lib.lists.concatMap (packages-list-file: import packages-list-file { inherit pkgs; }) [
|
++ lib.lists.concatMap (packages-list-file: import packages-list-file { inherit pkgs; }) [
|
||||||
./fonts.nix
|
./fonts.nix
|
||||||
|
@ -153,11 +153,8 @@ with pkgs;
|
|||||||
|
|
||||||
unstable.path-of-building
|
unstable.path-of-building
|
||||||
|
|
||||||
## My scripts
|
|
||||||
frajul.edit-config
|
|
||||||
frajul.xwacomcalibrate
|
|
||||||
|
|
||||||
conda
|
conda
|
||||||
|
watchexec # Run command when any file in current dir changes
|
||||||
|
|
||||||
pkg-config # Often needed to build something
|
pkg-config # Often needed to build something
|
||||||
]
|
]
|
||||||
|
@ -86,7 +86,7 @@ in
|
|||||||
wayland.windowManager.hyprland = {
|
wayland.windowManager.hyprland = {
|
||||||
# Whether to enable Hyprland wayland compositor
|
# Whether to enable Hyprland wayland compositor
|
||||||
enable = true;
|
enable = true;
|
||||||
package = inputs.hyprland.packages."${pkgs.system}".hyprland;
|
# package = inputs.hyprland.packages."${pkgs.system}".hyprland; # does only work with nixos-unstable
|
||||||
|
|
||||||
# The hyprland package to use (simplifies use of plugins)
|
# The hyprland package to use (simplifies use of plugins)
|
||||||
# package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
# package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
||||||
@ -99,7 +99,10 @@ in
|
|||||||
# Make PATH available to systemd services
|
# Make PATH available to systemd services
|
||||||
systemd.variables = [ "--all" ];
|
systemd.variables = [ "--all" ];
|
||||||
|
|
||||||
plugins = [ inputs.hyprland-plugins.packages.${pkgs.system}.hyprbars ];
|
plugins = with pkgs; [
|
||||||
|
# inputs.hyprland-plugins.packages.${pkgs.system}.hyprbars # does only work with nixos-unstable
|
||||||
|
hyprlandPlugins.hyprbars
|
||||||
|
];
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
"$mod" = "SUPER";
|
"$mod" = "SUPER";
|
||||||
@ -136,7 +139,7 @@ in
|
|||||||
|
|
||||||
# Master layout
|
# Master layout
|
||||||
master = {
|
master = {
|
||||||
new_is_master = false;
|
new_status = "slave";
|
||||||
no_gaps_when_only = 2; # with border
|
no_gaps_when_only = 2; # with border
|
||||||
mfact = 0.5; # Do not make master bigger
|
mfact = 0.5; # Do not make master bigger
|
||||||
};
|
};
|
||||||
@ -201,8 +204,8 @@ in
|
|||||||
|
|
||||||
# opening applications
|
# opening applications
|
||||||
"$mod, D, exec, wofi --show drun,run"
|
"$mod, D, exec, wofi --show drun,run"
|
||||||
"$mod, E, exec, thunar"
|
"$mod, E, exec, pcmanfm"
|
||||||
"$mod, Return, exec, alacritty"
|
"$mod, Return, exec, wezterm"
|
||||||
"$mod, B, exec, firefox"
|
"$mod, B, exec, firefox"
|
||||||
"$mod, C, exec, qalculate-gtk"
|
"$mod, C, exec, qalculate-gtk"
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@ in
|
|||||||
|
|
||||||
services.mako = {
|
services.mako = {
|
||||||
enable = true;
|
enable = true;
|
||||||
defaultTimeout = 5; # seconds, can be overwritten by notification sender
|
defaultTimeout = 5000; # milliseconds, can be overwritten by notification sender
|
||||||
backgroundColor = "#${palette.base00}";
|
backgroundColor = "#${palette.base00}";
|
||||||
textColor = "#${palette.base05}";
|
textColor = "#${palette.base05}";
|
||||||
borderColor = "#${palette.base0D}";
|
borderColor = "#${palette.base0D}";
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
"mode": "dock",
|
"mode": "dock",
|
||||||
"exclusive": true,
|
"exclusive": true,
|
||||||
"passtrough": true,
|
"passtrough": true,
|
||||||
"height": 20,
|
"height": 16,
|
||||||
|
|
||||||
"modules-left": [
|
"modules-left": [
|
||||||
"hyprland/workspaces"
|
"hyprland/workspaces"
|
||||||
@ -14,8 +14,24 @@
|
|||||||
|
|
||||||
"modules-right": ["idle_inhibitor", "disk", "cpu", "memory", "pulseaudio", "battery", "clock", "tray"],
|
"modules-right": ["idle_inhibitor", "disk", "cpu", "memory", "pulseaudio", "battery", "clock", "tray"],
|
||||||
|
|
||||||
"hyprland/window": {
|
"hyprland/workspaces": {
|
||||||
"format": "{}"
|
"on-scroll-up": "hyprctl dispatch workspace m+1",
|
||||||
|
"on-scroll-down": "hyprctl dispatch workspace m-1",
|
||||||
|
"all-outputs": false,
|
||||||
|
"on-click": "activate",
|
||||||
|
"format": "{icon}",
|
||||||
|
"format-icons": {
|
||||||
|
"1": "1",
|
||||||
|
"2": "2",
|
||||||
|
"3": "3",
|
||||||
|
"4": "4",
|
||||||
|
"5": "5",
|
||||||
|
"6": "6",
|
||||||
|
"7": "7",
|
||||||
|
"8": "8",
|
||||||
|
"9": "9",
|
||||||
|
"10": "10"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
"idle_inhibitor": {
|
"idle_inhibitor": {
|
||||||
@ -25,6 +41,7 @@
|
|||||||
"deactivated": ""
|
"deactivated": ""
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
"disk": {
|
"disk": {
|
||||||
"interval": 30,
|
"interval": 30,
|
||||||
"format": "Free: {percentage_free}% ({free})",
|
"format": "Free: {percentage_free}% ({free})",
|
||||||
@ -32,44 +49,14 @@
|
|||||||
"unit": "GB"
|
"unit": "GB"
|
||||||
},
|
},
|
||||||
|
|
||||||
"hyprland/workspaces": {
|
|
||||||
"on-scroll-up": "hyprctl dispatch workspace m+1",
|
|
||||||
"on-scroll-down": "hyprctl dispatch workspace m-1",
|
|
||||||
"all-outputs": false,
|
|
||||||
"on-click": "activate",
|
|
||||||
"format": "{icon}",
|
|
||||||
"format-icons": {
|
|
||||||
"1": "1",
|
|
||||||
"2": "2",
|
|
||||||
"3": "3",
|
|
||||||
"4": "4",
|
|
||||||
"5": "5",
|
|
||||||
"6": "6",
|
|
||||||
"7": "7",
|
|
||||||
"8": "8",
|
|
||||||
"9": "9",
|
|
||||||
"10": "10"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"cpu": {
|
"cpu": {
|
||||||
"format": " {usage}%"
|
"format": " {usage}%"
|
||||||
},
|
},
|
||||||
|
|
||||||
"memory": {
|
"memory": {
|
||||||
"format": " {}%"
|
"format": " {}%"
|
||||||
},
|
},
|
||||||
|
|
||||||
"tray": {
|
|
||||||
"icon-size": 20,
|
|
||||||
"tooltip": false,
|
|
||||||
"spacing": 10
|
|
||||||
},
|
|
||||||
|
|
||||||
"clock": {
|
|
||||||
"tooltip-format": "{calendar}",
|
|
||||||
"format": "{:%a %d.%m %H:%M:%S}",
|
|
||||||
"interval": 1
|
|
||||||
},
|
|
||||||
|
|
||||||
"pulseaudio": {
|
"pulseaudio": {
|
||||||
"format": "{icon} {volume}%",
|
"format": "{icon} {volume}%",
|
||||||
"format-muted": "<big></big>",
|
"format-muted": "<big></big>",
|
||||||
@ -77,7 +64,7 @@
|
|||||||
"headphone": "",
|
"headphone": "",
|
||||||
"default": ["", "", ""]
|
"default": ["", "", ""]
|
||||||
},
|
},
|
||||||
"scroll-step": 5.0,
|
"scroll-step": 5.0,
|
||||||
"max-volume": 200,
|
"max-volume": 200,
|
||||||
"on-click": "pulseaudio-popup",
|
"on-click": "pulseaudio-popup",
|
||||||
"on-click-right": "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
|
"on-click-right": "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
|
||||||
@ -93,5 +80,17 @@
|
|||||||
"format-plugged": " {capacity}% ({time})",
|
"format-plugged": " {capacity}% ({time})",
|
||||||
"format-full": "{icon} ",
|
"format-full": "{icon} ",
|
||||||
"format-icons": ["", "", "", "", ""]
|
"format-icons": ["", "", "", "", ""]
|
||||||
|
},
|
||||||
|
|
||||||
|
"clock": {
|
||||||
|
"tooltip-format": "{calendar}",
|
||||||
|
"format": "{:%a %d.%m %H:%M:%S}",
|
||||||
|
"interval": 1
|
||||||
|
},
|
||||||
|
|
||||||
|
"tray": {
|
||||||
|
"icon-size": 20,
|
||||||
|
"tooltip": false,
|
||||||
|
"spacing": 10
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -24,200 +24,26 @@ in
|
|||||||
enable = true;
|
enable = true;
|
||||||
systemd.enable = true;
|
systemd.enable = true;
|
||||||
settings.mainBar = builtins.fromJSON (builtins.readFile ./config.json);
|
settings.mainBar = builtins.fromJSON (builtins.readFile ./config.json);
|
||||||
style = ''
|
|
||||||
* {
|
|
||||||
/* `otf-font-awesome` is required to be installed for icons */
|
|
||||||
font-family: JetBrainsMono Nerd Font;
|
|
||||||
font-size: 16px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#clock,
|
|
||||||
#custom-notification,
|
|
||||||
#custom-launcher,
|
|
||||||
#custom-power-menu,
|
|
||||||
/*#custom-colorpicker,*/
|
|
||||||
#custom-window,
|
|
||||||
#memory,
|
|
||||||
#disk,
|
|
||||||
#network,
|
|
||||||
#battery,
|
|
||||||
#custom-spotify,
|
|
||||||
#pulseaudio,
|
|
||||||
#window,
|
|
||||||
#idle_inhibitor,
|
|
||||||
#cpu,
|
|
||||||
#tray {
|
|
||||||
padding: 0 15px;
|
|
||||||
border-radius: 12px;
|
|
||||||
background: #${palette.base00};
|
|
||||||
color: #${palette.base07};
|
|
||||||
margin-top: 0px;
|
|
||||||
margin-bottom: 0px;
|
|
||||||
margin-right: 2px;
|
|
||||||
margin-left: 2px;
|
|
||||||
transition: all 0.3s ease;
|
|
||||||
}
|
|
||||||
|
|
||||||
#window {
|
|
||||||
background-color: transparent;
|
|
||||||
box-shadow: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
window#waybar {
|
|
||||||
background-color: rgba(0, 0, 0, 0.096);
|
|
||||||
border-radius: 17px;
|
|
||||||
}
|
|
||||||
|
|
||||||
window * {
|
|
||||||
background-color: transparent;
|
|
||||||
border-radius: 0px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button label {
|
|
||||||
color: #${palette.base07};
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button.active label {
|
|
||||||
color: #${palette.base00};
|
|
||||||
font-weight: bolder;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button:hover {
|
|
||||||
box-shadow: #${palette.base07} 0 0 0 1.5px;
|
|
||||||
background-color: #${palette.base00};
|
|
||||||
min-width: 50px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces {
|
|
||||||
background-color: transparent;
|
|
||||||
border-radius: 17px;
|
|
||||||
padding: 0 0px;
|
|
||||||
margin-top: 2px;
|
|
||||||
margin-bottom: 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button {
|
|
||||||
background-color: #${palette.base00};
|
|
||||||
border-radius: 12px;
|
|
||||||
margin-left: 4px;
|
|
||||||
|
|
||||||
transition: all 0.3s ease;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button.active {
|
|
||||||
min-width: 50px;
|
|
||||||
box-shadow: rgba(0, 0, 0, 0.288) 2 2 5 2px;
|
|
||||||
background-color: #${palette.base0F};
|
|
||||||
background-size: 400% 400%;
|
|
||||||
transition: all 0.3s ease;
|
|
||||||
background: linear-gradient(
|
|
||||||
58deg,
|
|
||||||
#${palette.base0E},
|
|
||||||
#${palette.base0E},
|
|
||||||
#${palette.base0E},
|
|
||||||
#${palette.base0D},
|
|
||||||
#${palette.base0D},
|
|
||||||
#${palette.base0E},
|
|
||||||
#${palette.base08}
|
|
||||||
);
|
|
||||||
background-size: 300% 300%;
|
|
||||||
animation: colored-gradient 20s ease infinite;
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes colored-gradient {
|
|
||||||
0% {
|
|
||||||
background-position: 71% 0%;
|
|
||||||
}
|
|
||||||
50% {
|
|
||||||
background-position: 30% 100%;
|
|
||||||
}
|
|
||||||
100% {
|
|
||||||
background-position: 71% 0%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-power-menu {
|
|
||||||
margin-right: 10px;
|
|
||||||
padding-left: 12px;
|
|
||||||
padding-right: 15px;
|
|
||||||
padding-top: 3px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-spotify {
|
|
||||||
margin-left: 5px;
|
|
||||||
padding-left: 15px;
|
|
||||||
padding-right: 15px;
|
|
||||||
padding-top: 3px;
|
|
||||||
color: #${palette.base07};
|
|
||||||
background-color: #${palette.base00};
|
|
||||||
transition: all 0.3s ease;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-spotify.playing {
|
|
||||||
color: rgb(180, 190, 254);
|
|
||||||
background: rgba(30, 30, 46, 0.6);
|
|
||||||
background: linear-gradient(
|
|
||||||
90deg,
|
|
||||||
#${palette.base02},
|
|
||||||
#${palette.base00},
|
|
||||||
#${palette.base00},
|
|
||||||
#${palette.base00},
|
|
||||||
#${palette.base00},
|
|
||||||
#${palette.base02}
|
|
||||||
);
|
|
||||||
background-size: 400% 100%;
|
|
||||||
animation: grey-gradient 3s linear infinite;
|
|
||||||
transition: all 0.3s ease;
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes grey-gradient {
|
|
||||||
0% {
|
|
||||||
background-position: 100% 50%;
|
|
||||||
}
|
|
||||||
100% {
|
|
||||||
background-position: -33% 50%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#tray menu {
|
|
||||||
color: #${palette.base07};
|
|
||||||
background-color: #${palette.base00};
|
|
||||||
opacity: 1.0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.warning {
|
|
||||||
color: #${palette.base08};
|
|
||||||
}
|
|
||||||
|
|
||||||
#pulseaudio.muted {
|
|
||||||
color: #${palette.base08};
|
|
||||||
padding-right: 16px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-notification.collapsed,
|
|
||||||
#custom-notification.waiting_done {
|
|
||||||
min-width: 12px;
|
|
||||||
padding-right: 17px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#custom-notification.waiting_start,
|
|
||||||
#custom-notification.expanded {
|
|
||||||
background-color: transparent;
|
|
||||||
background: linear-gradient(
|
|
||||||
90deg,
|
|
||||||
#${palette.base02},
|
|
||||||
#${palette.base00},
|
|
||||||
#${palette.base00},
|
|
||||||
#${palette.base00},
|
|
||||||
#${palette.base00},
|
|
||||||
#${palette.base02}
|
|
||||||
);
|
|
||||||
background-size: 400% 100%;
|
|
||||||
animation: grey-gradient 3s linear infinite;
|
|
||||||
min-width: 500px;
|
|
||||||
border-radius: 17px;
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
xdg.configFile."waybar/style.css".source = ./style.css;
|
||||||
|
xdg.configFile."waybar/theme.css".text = ''
|
||||||
|
/*
|
||||||
|
bg - background
|
||||||
|
fg - foreground
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Main Colors */
|
||||||
|
@define-color background #${palette.base00};
|
||||||
|
@define-color foreground #${palette.base05};
|
||||||
|
|
||||||
|
/* Workspace Button Colors */
|
||||||
|
@define-color hover-bg #${palette.base01};
|
||||||
|
@define-color hover-fg #${palette.base05};
|
||||||
|
@define-color active-bg #${palette.base02};
|
||||||
|
@define-color active-fg #${palette.base08};
|
||||||
|
@define-color urgent-bg #${palette.base08};
|
||||||
|
@define-color urgent-fg #${palette.base00};
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
94
modules/home/hyprland/waybar/style.css
Normal file
94
modules/home/hyprland/waybar/style.css
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
* {
|
||||||
|
/* `otf-font-awesome` is required to be installed for icons */
|
||||||
|
font-family: JetBrainsMono Nerd Font;
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* This imports the base16 colors */
|
||||||
|
@import "theme.css";
|
||||||
|
|
||||||
|
/* Main Background */
|
||||||
|
window#waybar { background: @background; }
|
||||||
|
|
||||||
|
/* Tooltip Styling */
|
||||||
|
tooltip {
|
||||||
|
color: @foreground;
|
||||||
|
background: @background;
|
||||||
|
border: solid;
|
||||||
|
border-width: 1.5px;
|
||||||
|
border-radius: 7px;
|
||||||
|
border-color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Workspace Button */
|
||||||
|
#workspaces button {
|
||||||
|
color: @foreground;
|
||||||
|
border-radius: 5px;
|
||||||
|
box-shadow: none;
|
||||||
|
margin-top: 2px;
|
||||||
|
margin-bottom: 2px;
|
||||||
|
margin-left: 0px;
|
||||||
|
margin-right: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
padding-right: 2px;
|
||||||
|
padding-left: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Opened workspaces (also on other screen) */
|
||||||
|
#workspaces button.visible{
|
||||||
|
color: @active-fg;
|
||||||
|
background: @hover-bg;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Active Workspace Button */
|
||||||
|
#workspaces button.active {
|
||||||
|
color: @active-fg;
|
||||||
|
background: @active-bg;
|
||||||
|
box-shadow: 0px 0px 2px 1px rgba(0, 0, 0, 1);
|
||||||
|
margin-right: 2px;
|
||||||
|
margin-left: 2px;
|
||||||
|
padding-right: 6px;
|
||||||
|
padding-left: 6px;
|
||||||
|
transition: all 0.4s cubic-bezier(.55,-0.68,.48,1.682);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Hover Effect for Workspace Buttons */
|
||||||
|
#workspaces button.inactive:hover {
|
||||||
|
color: @hover-fg;
|
||||||
|
background: @hover-bg;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Urgent Workspace Buttons */
|
||||||
|
#workspaces button.urgent {
|
||||||
|
color: @urgent-fg;
|
||||||
|
background: @urgent-bg;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* General Module Styling */
|
||||||
|
#idle_inhibitor,
|
||||||
|
#disk,
|
||||||
|
#cpu,
|
||||||
|
#memory,
|
||||||
|
#pulseaudio,
|
||||||
|
#battery,
|
||||||
|
#clock,
|
||||||
|
#tray {
|
||||||
|
color: @foreground;
|
||||||
|
padding: 0 10px;
|
||||||
|
margin-top: 0px;
|
||||||
|
margin-bottom: 0px;
|
||||||
|
margin-right: 2px;
|
||||||
|
margin-left: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* #battery.warning { */
|
||||||
|
/* color: #${palette.base08}; */
|
||||||
|
/* } */
|
||||||
|
|
||||||
|
/* #pulseaudio.muted { */
|
||||||
|
/* color: #${palette.base08}; */
|
||||||
|
/* padding-right: 16px; */
|
||||||
|
/* } */
|
@ -39,6 +39,7 @@ in
|
|||||||
-- config.font_size = 12.0
|
-- config.font_size = 12.0
|
||||||
config.hide_tab_bar_if_only_one_tab = true
|
config.hide_tab_bar_if_only_one_tab = true
|
||||||
config.audible_bell = 'Disabled'
|
config.audible_bell = 'Disabled'
|
||||||
|
config.enable_wayland = false -- Somehow only works for wayland if this is set to false
|
||||||
|
|
||||||
config.window_close_confirmation = 'NeverPrompt'
|
config.window_close_confirmation = 'NeverPrompt'
|
||||||
|
|
||||||
|
@ -16,7 +16,7 @@ in
|
|||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
boot.loader.systemd-boot.configurationLimit = 5;
|
boot.loader.systemd-boot.configurationLimit = 10;
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
|
||||||
# https://github.com/NixOS/nixpkgs/blob/c32c39d6f3b1fe6514598fa40ad2cf9ce22c3fb7/nixos/modules/system/boot/loader/systemd-boot/systemd-boot.nix#L66
|
# https://github.com/NixOS/nixpkgs/blob/c32c39d6f3b1fe6514598fa40ad2cf9ce22c3fb7/nixos/modules/system/boot/loader/systemd-boot/systemd-boot.nix#L66
|
||||||
|
@ -30,7 +30,7 @@ in
|
|||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
programs.hyprland.enable = true;
|
programs.hyprland.enable = true;
|
||||||
programs.hyprland.package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
# programs.hyprland.package = inputs.hyprland.packages.${pkgs.system}.hyprland; # does only work with nixos-unstable
|
||||||
programs.hyprland.xwayland.enable = true;
|
programs.hyprland.xwayland.enable = true;
|
||||||
security.pam.services.hyprlock = { };
|
security.pam.services.hyprlock = { };
|
||||||
};
|
};
|
||||||
|
41
modules/nixos/i3/default.nix
Normal file
41
modules/nixos/i3/default.nix
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
{
|
||||||
|
# Snowfall Lib provides a customized `lib` instance with access to your flake's library
|
||||||
|
# as well as the libraries available from your flake's inputs.
|
||||||
|
lib,
|
||||||
|
# An instance of `pkgs` with your overlays and packages applied is also available.
|
||||||
|
pkgs,
|
||||||
|
# You also have access to your flake's inputs.
|
||||||
|
inputs,
|
||||||
|
|
||||||
|
# Additional metadata is provided by Snowfall Lib.
|
||||||
|
namespace, # The namespace used for your flake, defaulting to "internal" if not set.
|
||||||
|
system, # The system architecture for this host (eg. `x86_64-linux`).
|
||||||
|
target, # The Snowfall Lib target for this system (eg. `x86_64-iso`).
|
||||||
|
format, # A normalized name for the system target (eg. `iso`).
|
||||||
|
virtual, # A boolean to determine whether this system is a virtual target using nixos-generators.
|
||||||
|
systems, # An attribute map of your defined hosts.
|
||||||
|
|
||||||
|
# All other arguments come from the module system.
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.modules.i3;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.modules.i3 = {
|
||||||
|
enable = lib.mkOption { default = false; };
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
services.xserver.windowManager.i3.enable = true;
|
||||||
|
services.xserver.windowManager.i3.package = pkgs.i3-gaps;
|
||||||
|
|
||||||
|
programs.xss-lock = {
|
||||||
|
# responds to "loginctl lock-session" via dbus
|
||||||
|
enable = true;
|
||||||
|
lockerCommand = "${pkgs.i3lock}/bin/i3lock --ignore-empty-password --color=000000";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
71
packages/lntocp/default.nix
Normal file
71
packages/lntocp/default.nix
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
{
|
||||||
|
# Snowfall Lib provides a customized `lib` instance with access to your flake's library
|
||||||
|
# as well as the libraries available from your flake's inputs.
|
||||||
|
lib,
|
||||||
|
# You also have access to your flake's inputs.
|
||||||
|
inputs,
|
||||||
|
|
||||||
|
# All other arguments come from NixPkgs. You can use `pkgs` to pull packages or helpers
|
||||||
|
# programmatically or you may add the named attributes as arguments here.
|
||||||
|
pkgs,
|
||||||
|
stdenv,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
pkgs.writeShellApplication {
|
||||||
|
name = "lntocp";
|
||||||
|
|
||||||
|
runtimeInputs = with pkgs; [ ];
|
||||||
|
|
||||||
|
text = ''
|
||||||
|
#!/bin/bash
|
||||||
|
# This script accepts any number of files or directories as input.
|
||||||
|
# If the input is a symbolic link, it deletes the symlink and copies
|
||||||
|
# the original file or folder (where the symlink points to) to the location
|
||||||
|
# where the symlink was. Non-symlink files or directories are ignored.
|
||||||
|
|
||||||
|
# Function to copy original file/folder in place of the symlink
|
||||||
|
process_symlink() {
|
||||||
|
symlink="$1"
|
||||||
|
|
||||||
|
# Resolve the target (the file or directory the symlink points to)
|
||||||
|
target=$(readlink "$symlink")
|
||||||
|
|
||||||
|
# Check if the target is absolute or relative
|
||||||
|
if [[ ! "$target" =~ ^/ ]]; then
|
||||||
|
# If the target is relative, compute the full path
|
||||||
|
target="$(dirname "$symlink")/$target"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check if the target exists
|
||||||
|
if [ -e "$target" ]; then
|
||||||
|
echo "Processing symlink: $symlink -> $target"
|
||||||
|
|
||||||
|
# Remove the symlink
|
||||||
|
rm "$symlink"
|
||||||
|
|
||||||
|
# Copy the original target to the symlink location
|
||||||
|
if [ -d "$target" ]; then
|
||||||
|
# If it's a directory, use 'cp -r'
|
||||||
|
cp -r "$target" "$symlink"
|
||||||
|
else
|
||||||
|
# Otherwise, it's a file, use 'cp'
|
||||||
|
cp "$target" "$symlink"
|
||||||
|
fi
|
||||||
|
echo "Copied $target to $symlink"
|
||||||
|
else
|
||||||
|
echo "Target $target does not exist!"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Loop through all arguments (files and directories passed to the script)
|
||||||
|
for item in "$@"; do
|
||||||
|
if [ -L "$item" ]; then
|
||||||
|
# If the item is a symlink, process it
|
||||||
|
process_symlink "$item"
|
||||||
|
else
|
||||||
|
echo "$item is not a symlink. Skipping."
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
}
|
@ -73,8 +73,9 @@
|
|||||||
locales.enable = true;
|
locales.enable = true;
|
||||||
# thunar.enable = true;
|
# thunar.enable = true;
|
||||||
pcmanfm.enable = true;
|
pcmanfm.enable = true;
|
||||||
# wayland.enable = true;
|
wayland.enable = true;
|
||||||
# hyprland.enable = true;
|
hyprland.enable = true;
|
||||||
|
# i3.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
nix.settings.auto-optimise-store = true;
|
nix.settings.auto-optimise-store = true;
|
||||||
@ -96,51 +97,13 @@
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
# Enable the X11 windowing system.
|
|
||||||
hardware.opengl.enable = true;
|
hardware.opengl.enable = true;
|
||||||
|
|
||||||
nix.gc = {
|
|
||||||
automatic = true;
|
|
||||||
dates = "weekly";
|
|
||||||
options = "--delete-older-than 30d";
|
|
||||||
};
|
|
||||||
|
|
||||||
# Enable the XFCE Desktop Environment.
|
|
||||||
security.pam.services.gdm.enableGnomeKeyring = true;
|
|
||||||
|
|
||||||
# services.displayManager.sddm.wayland.enable = true;
|
|
||||||
# services.xserver.desktopManager = {
|
|
||||||
# xterm.enable = false;
|
|
||||||
# xfce = {
|
|
||||||
# enable = true;
|
|
||||||
# noDesktop = true;
|
|
||||||
# enableXfwm = false;
|
|
||||||
# };
|
|
||||||
# };
|
|
||||||
# services.xserver.displayManager.gdm.enable = true;
|
|
||||||
services.xserver.windowManager.i3.enable = true;
|
|
||||||
services.xserver.windowManager.i3.package = pkgs.i3-gaps;
|
|
||||||
|
|
||||||
services.xserver.wacom.enable = true;
|
services.xserver.wacom.enable = true;
|
||||||
|
|
||||||
services.blueman.enable = true;
|
|
||||||
services.upower.enable = true;
|
|
||||||
|
|
||||||
# TODO: move into i3 module
|
|
||||||
programs.xss-lock = {
|
|
||||||
# responds to "loginctl lock-session" via dbus
|
|
||||||
enable = true;
|
|
||||||
lockerCommand = "${pkgs.i3lock}/bin/i3lock --ignore-empty-password --color=000000";
|
|
||||||
};
|
|
||||||
# services.xserver.xautolock = { # TODO: does not work
|
# services.xserver.xautolock = { # TODO: does not work
|
||||||
# enable = true;
|
# enable = true;
|
||||||
# time = 1;
|
# time = 1;
|
||||||
# };
|
# };
|
||||||
programs.dconf.enable = true;
|
|
||||||
services.logind.lidSwitch = "lock";
|
|
||||||
services.logind.lidSwitchDocked = "lock";
|
|
||||||
|
|
||||||
programs.kdeconnect.enable = true;
|
|
||||||
|
|
||||||
# Configure keymap in X11
|
# Configure keymap in X11
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
@ -150,6 +113,25 @@
|
|||||||
xkb.variant = "";
|
xkb.variant = "";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nix.gc = {
|
||||||
|
automatic = true;
|
||||||
|
dates = "weekly";
|
||||||
|
options = "--delete-older-than 30d";
|
||||||
|
};
|
||||||
|
|
||||||
|
security.pam.services.gdm.enableGnomeKeyring = true;
|
||||||
|
|
||||||
|
services.blueman.enable = true;
|
||||||
|
services.upower.enable = true;
|
||||||
|
|
||||||
|
programs.steam.enable = true;
|
||||||
|
|
||||||
|
programs.dconf.enable = true;
|
||||||
|
services.logind.lidSwitch = "lock";
|
||||||
|
services.logind.lidSwitchDocked = "lock";
|
||||||
|
|
||||||
|
programs.kdeconnect.enable = true;
|
||||||
|
|
||||||
# Enable touchpad support (enabled default in most desktopManager).
|
# Enable touchpad support (enabled default in most desktopManager).
|
||||||
services.libinput.enable = true;
|
services.libinput.enable = true;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user