feat(nix): extend wayland with sway setup
This commit is contained in:
parent
2da1181445
commit
6970b8c7d2
27 changed files with 867 additions and 516 deletions
352
flake.lock
generated
352
flake.lock
generated
|
@ -3,11 +3,11 @@
|
||||||
"aphorme_launcher": {
|
"aphorme_launcher": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1682579667,
|
"lastModified": 1683977169,
|
||||||
"narHash": "sha256-TTGneJdTpHoDA2rZczKQ77+XByZGBz/NRqY21AMP+BQ=",
|
"narHash": "sha256-juRiokIk5x+eGJm+QuCdFPUjEggDmscpy2Ip7pU9KI4=",
|
||||||
"owner": "Iaphetes",
|
"owner": "Iaphetes",
|
||||||
"repo": "aphorme_launcher",
|
"repo": "aphorme_launcher",
|
||||||
"rev": "182077d5b438301f9a8522649605dc1b736d9677",
|
"rev": "211bc27de061b61e3119a7966cff09f4b8c3a1fe",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -27,11 +27,11 @@
|
||||||
"stable": "stable"
|
"stable": "stable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1682202576,
|
"lastModified": 1684127527,
|
||||||
"narHash": "sha256-vcTEEEHKx4PTfY80bUmZMwXRy0cTDJCkULHhqe1HJS8=",
|
"narHash": "sha256-tAzgb2jgmRaX9HETry38h2OvBf9YkHEH1fFvIJQV9A0=",
|
||||||
"owner": "zhaofengli",
|
"owner": "zhaofengli",
|
||||||
"repo": "colmena",
|
"repo": "colmena",
|
||||||
"rev": "089431737e283ed3e402a7dff578cb442444c431",
|
"rev": "caf33af7d854c8d9b88a8f3dae7adb1c24c1407b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -50,11 +50,11 @@
|
||||||
"rust-overlay": "rust-overlay"
|
"rust-overlay": "rust-overlay"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681680516,
|
"lastModified": 1684468982,
|
||||||
"narHash": "sha256-EB8Adaeg4zgcYDJn9sR6UMjN/OHdIiMMK19+3LmmXQY=",
|
"narHash": "sha256-EoC1N5sFdmjuAP3UOkyQujSOT6EdcXTnRw8hPjJkEgc=",
|
||||||
"owner": "ipetkov",
|
"owner": "ipetkov",
|
||||||
"repo": "crane",
|
"repo": "crane",
|
||||||
"rev": "54b63c8eae4c50172cb50b612946ff1d2bc1c75c",
|
"rev": "99de890b6ef4b4aab031582125b6056b792a4a30",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -71,11 +71,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1674131019,
|
"lastModified": 1684003056,
|
||||||
"narHash": "sha256-NmbeqCEM9GwwlYPNmu4aWZX3nfBJuMvaJ7T7QzWd8MM=",
|
"narHash": "sha256-zl11zyRNKzAW7YLvTkxmFjSBqxZbEvfwZqNCT91ELfU=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "disko",
|
"repo": "disko",
|
||||||
"rev": "e1eba38e8ea3ee6ca8ffef57668d4a37fff19ca4",
|
"rev": "8f95856432e091e5ac56fea2df81e905ddd02d27",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -93,11 +93,11 @@
|
||||||
"rust-analyzer-src": "rust-analyzer-src"
|
"rust-analyzer-src": "rust-analyzer-src"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1682576562,
|
"lastModified": 1684650006,
|
||||||
"narHash": "sha256-JsSF/hf/i/2IURKXt6tt58o6/JFk2RvCMxGbUHRd97M=",
|
"narHash": "sha256-cIWPr9nCddVu3DITyHBNWy9tBbfc86u+BxPEnRWslMM=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "fenix",
|
"repo": "fenix",
|
||||||
"rev": "e5fcb848257ba1c4f4f0615bfadaeddf0f851ad5",
|
"rev": "fb17fb7db07709d2aca1efc1000fb1cf60b00b4e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -138,16 +138,31 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-compat_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1680531544,
|
||||||
|
"narHash": "sha256-8qbiDTYb1kGaDADRXTItpcMKQ1TeQVkuof6oEwHUvVA=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "95e78dc12268c5e4878621845c511077f3798729",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-parts": {
|
"flake-parts": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": "nixpkgs-lib"
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1680392223,
|
"lastModified": 1683560683,
|
||||||
"narHash": "sha256-n3g7QFr85lDODKt250rkZj2IFS3i4/8HBU2yKHO3tqw=",
|
"narHash": "sha256-XAygPMN5Xnk/W2c1aW0jyEa6lfMDZWlQgiNtmHXytPc=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "dcc36e45d054d7bb554c9cdab69093debd91a0b5",
|
"rev": "006c75898cf814ef9497252b022e91c946ba8e17",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -164,11 +179,33 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1673362319,
|
"lastModified": 1683560683,
|
||||||
"narHash": "sha256-Pjp45Vnj7S/b3BRpZEVfdu8sqqA6nvVjvYu59okhOyI=",
|
"narHash": "sha256-XAygPMN5Xnk/W2c1aW0jyEa6lfMDZWlQgiNtmHXytPc=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "82c16f1682cf50c01cb0280b38a1eed202b3fe9f",
|
"rev": "006c75898cf814ef9497252b022e91c946ba8e17",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_3": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"nixpkgs-wayland",
|
||||||
|
"nix-eval-jobs",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1680392223,
|
||||||
|
"narHash": "sha256-n3g7QFr85lDODKt250rkZj2IFS3i4/8HBU2yKHO3tqw=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "dcc36e45d054d7bb554c9cdab69093debd91a0b5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -193,12 +230,15 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_2": {
|
"flake-utils_2": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems"
|
||||||
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1678901627,
|
"lastModified": 1681202837,
|
||||||
"narHash": "sha256-U02riOqrKKzwjsxc/400XnElV+UtPUQWpANPlyazjH0=",
|
"narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "93a2b84fc4b70d9e089d029deacc3583435c2ed6",
|
"rev": "cfacdce06f30d2b68473a46042957675eebb3401",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -208,6 +248,24 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_3": {
|
"flake-utils_3": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681202837,
|
||||||
|
"narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "cfacdce06f30d2b68473a46042957675eebb3401",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1667395993,
|
"lastModified": 1667395993,
|
||||||
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
|
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
|
||||||
|
@ -253,14 +311,33 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"lib-aggregate": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils_3",
|
||||||
|
"nixpkgs-lib": "nixpkgs-lib_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681214977,
|
||||||
|
"narHash": "sha256-pBaG4iKzF/YJQA06f87IZokB15Z13DYd6zsT/wlbWfI=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "lib-aggregate",
|
||||||
|
"rev": "19d70ca7a81956bd01a768297b84798f301e150f",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "lib-aggregate",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"magmawm": {
|
"magmawm": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1684598861,
|
"lastModified": 1684662176,
|
||||||
"narHash": "sha256-yya0fLFie9RjZ+97dcwIFidAApX2XpVn9GokzTnUlyE=",
|
"narHash": "sha256-jgTAHe4JYAHjm6araJlPJZoLlnz6q/Y21bKrx/kBetk=",
|
||||||
"owner": "MagmaWM",
|
"owner": "MagmaWM",
|
||||||
"repo": "MagmaWM",
|
"repo": "MagmaWM",
|
||||||
"rev": "c8dc4bac3b5acf870c28896de333033eedc80397",
|
"rev": "e228ed1ff6b6c6181a8b05e1c4e0d74f2634e14b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -269,13 +346,32 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nix-eval-jobs": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-parts": "flake-parts_3",
|
||||||
|
"nixpkgs": "nixpkgs_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1682480188,
|
||||||
|
"narHash": "sha256-4LG8Vl/fLWsJg+QAb5/PvZTdLtPFsYFxuGDfEAR5szA=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nix-eval-jobs",
|
||||||
|
"rev": "73ee1712faeb5db609fc9f991e2dc1de265acff5",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nix-eval-jobs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixos-2211": {
|
"nixos-2211": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1674463419,
|
"lastModified": 1684141842,
|
||||||
"narHash": "sha256-5PIilc8vqmz7jMwpr+pqCz07L+q0eR2vdwNEUkRxwE8=",
|
"narHash": "sha256-sbdzOwBDcyzz/Dr1ztdF+tElMyM/cgx+4XxVgz+NLRM=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "6eb2af1b88814ca90e6a33761ff71ffd6c360839",
|
"rev": "2eb0795720849ae19c068e39b17362d3ebcd585c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -289,6 +385,7 @@
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"disko": "disko",
|
"disko": "disko",
|
||||||
"flake-parts": "flake-parts_2",
|
"flake-parts": "flake-parts_2",
|
||||||
|
"nixos-2211": "nixos-2211",
|
||||||
"nixos-images": "nixos-images",
|
"nixos-images": "nixos-images",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
|
@ -296,11 +393,11 @@
|
||||||
"treefmt-nix": "treefmt-nix"
|
"treefmt-nix": "treefmt-nix"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1680727722,
|
"lastModified": 1684473129,
|
||||||
"narHash": "sha256-X360Gt8odtbTItWCM2aJ39YKqEXThuXka1hNmkjojxc=",
|
"narHash": "sha256-Nmqas06HVswtASU0kwY4tD/dOtKgMIo7OlJaIGrHYwA=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "nixos-anywhere",
|
"repo": "nixos-anywhere",
|
||||||
"rev": "7563cf5863ca03a3b92f555e8baf959a1242b88a",
|
"rev": "0586b4da4f58f0d02d94fceb06fa7e15d8d03fff",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -312,15 +409,21 @@
|
||||||
},
|
},
|
||||||
"nixos-images": {
|
"nixos-images": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixos-2211": "nixos-2211",
|
"nixos-2211": [
|
||||||
"nixos-unstable": "nixos-unstable"
|
"nixos-anywhere",
|
||||||
|
"nixos-2211"
|
||||||
|
],
|
||||||
|
"nixos-unstable": [
|
||||||
|
"nixos-anywhere",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1674574673,
|
"lastModified": 1684151031,
|
||||||
"narHash": "sha256-Bttq9LGgSaqjC7nn8AHRbuKYqe2foDK+0EXWTn9tZQw=",
|
"narHash": "sha256-6bBOxHIRCn4WQBsjsnaLL7bwcHuCLQj1Xd3gnmbZ9LQ=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixos-images",
|
"repo": "nixos-images",
|
||||||
"rev": "b9b667b8b4a8d0c379b39c46408a8a5832195609",
|
"rev": "3758c6481cd8ad9571c0401fc634eda05a86489b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -329,29 +432,13 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixos-unstable": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1674365217,
|
|
||||||
"narHash": "sha256-lL3qUbAr/tnt/xGk1MTc8xuOTKqErqubYha4vhjA4+g=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "6c582bdf390948a6be049e81ecbab81bb160a5d3",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-unstable-small",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1682493015,
|
"lastModified": 1684580438,
|
||||||
"narHash": "sha256-KiMOAe8u83QDF40Z25kWMkZbqr9U+mvjvEJy5Qvw0nw=",
|
"narHash": "sha256-LUPswmDn6fXP3lEBJFA2Id8PkcYDgzUilevWackYVvQ=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "60c0f762658916a4a5b5a36b3e06486f8301daf4",
|
"rev": "7dc71aef32e8faf065cb171700792cf8a65c152d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -364,11 +451,11 @@
|
||||||
"nixpkgs-lib": {
|
"nixpkgs-lib": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"dir": "lib",
|
"dir": "lib",
|
||||||
"lastModified": 1680213900,
|
"lastModified": 1682879489,
|
||||||
"narHash": "sha256-cIDr5WZIj3EkKyCgj/6j3HBH4Jj1W296z7HTcWj1aMA=",
|
"narHash": "sha256-sASwo8gBt7JDnOOstnps90K1wxmVfyhsTPPNTGBPjjg=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "e3652e0735fbec227f342712f180f4f21f0594f2",
|
"rev": "da45bf6ec7bbcc5d1e14d3795c025199f28e0de0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -379,6 +466,74 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs-lib_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681001314,
|
||||||
|
"narHash": "sha256-5sDnCLdrKZqxLPK4KA8+f4A3YKO/u6ElpMILvX0g72c=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixpkgs.lib",
|
||||||
|
"rev": "367c0e1086a4eb4502b24d872cea2c7acdd557f4",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixpkgs.lib",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs-wayland": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat_3",
|
||||||
|
"lib-aggregate": "lib-aggregate",
|
||||||
|
"nix-eval-jobs": "nix-eval-jobs",
|
||||||
|
"nixpkgs": "nixpkgs_3"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1684595659,
|
||||||
|
"narHash": "sha256-B1NtPXWF3Xax1FDeMRYyUDr2e30blTiXLKaUSpegq0E=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixpkgs-wayland",
|
||||||
|
"rev": "031ace86d48def582fb8f7e098dc9a94fc25c3f7",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixpkgs-wayland",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681347147,
|
||||||
|
"narHash": "sha256-B+hTioRc3Jdf4SJyeCiO0fW5ShIznJk2OTiW2vOV+mc=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "1a9d9175ecc48ecd033062fa09b1834d13ae9c69",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "master",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1684570954,
|
||||||
|
"narHash": "sha256-FX5y4Sm87RWwfu9PI71XFvuRpZLowh00FQpIJ1WfXqE=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "3005f20ce0aaa58169cdee57c8aa12e5f1b6e1b3",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"ofi-pass": {
|
"ofi-pass": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
|
@ -407,18 +562,20 @@
|
||||||
"magmawm": "magmawm",
|
"magmawm": "magmawm",
|
||||||
"nixos-anywhere": "nixos-anywhere",
|
"nixos-anywhere": "nixos-anywhere",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
|
"nixpkgs-wayland": "nixpkgs-wayland",
|
||||||
"ofi-pass": "ofi-pass",
|
"ofi-pass": "ofi-pass",
|
||||||
|
"salut": "salut",
|
||||||
"yofi": "yofi"
|
"yofi": "yofi"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rust-analyzer-src": {
|
"rust-analyzer-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1682502267,
|
"lastModified": 1684616122,
|
||||||
"narHash": "sha256-S1Rk8+lW6GqnfVDyxR7ctJaGRglvhm/DWCeDD3J3ut8=",
|
"narHash": "sha256-PLQN+e93BC1Yiqt4QNCj3cJ4mHtsO7Xlgn0VprgxiX4=",
|
||||||
"owner": "rust-lang",
|
"owner": "rust-lang",
|
||||||
"repo": "rust-analyzer",
|
"repo": "rust-analyzer",
|
||||||
"rev": "797c2f1dde0905afa24f567160ed23ba2bc79a81",
|
"rev": "a04d8456be1d289c814846178cc1ff63b4fc297b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -440,11 +597,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1680488274,
|
"lastModified": 1683080331,
|
||||||
"narHash": "sha256-0vYMrZDdokVmPQQXtFpnqA2wEgCCUXf5a3dDuDVshn0=",
|
"narHash": "sha256-nGDvJ1DAxZIwdn6ww8IFwzoHb2rqBP4wv/65Wt5vflk=",
|
||||||
"owner": "oxalica",
|
"owner": "oxalica",
|
||||||
"repo": "rust-overlay",
|
"repo": "rust-overlay",
|
||||||
"rev": "7ec2ff598a172c6e8584457167575b3a1a5d80d8",
|
"rev": "d59c3fa0cba8336e115b376c2d9e91053aa59e56",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -453,6 +610,22 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"salut": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1671283721,
|
||||||
|
"narHash": "sha256-W0lhhImSXtYJDeMbxyEioYu/Bh7ZclwR1/5DzNbxM8o=",
|
||||||
|
"owner": "snakedye",
|
||||||
|
"repo": "salut",
|
||||||
|
"rev": "aa57c4d190812908a9c32cd49cff14390c6dfdcb",
|
||||||
|
"type": "gitlab"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "snakedye",
|
||||||
|
"repo": "salut",
|
||||||
|
"type": "gitlab"
|
||||||
|
}
|
||||||
|
},
|
||||||
"stable": {
|
"stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1669735802,
|
"lastModified": 1669735802,
|
||||||
|
@ -469,13 +642,49 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"treefmt-nix": {
|
"systems": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1674297056,
|
"lastModified": 1681028828,
|
||||||
"narHash": "sha256-IheUucTSpBsZ3JhAnrx2RWXf0Z5ekNGiW6ojct3FcZo=",
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"treefmt-nix": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixos-anywhere",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1684070360,
|
||||||
|
"narHash": "sha256-WaXr9ayqjp0R2+j9MrE1Ufdujw0vEA0o1G/0CrTt4Ns=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "treefmt-nix",
|
"repo": "treefmt-nix",
|
||||||
"rev": "c117283f7482b99a89de0d6ae4b77318ad283294",
|
"rev": "27107cf3dfdc3c809d2477954d92fc2cc68b4401",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -486,7 +695,7 @@
|
||||||
},
|
},
|
||||||
"yofi": {
|
"yofi": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_3",
|
"flake-utils": "flake-utils_4",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
|
@ -501,6 +710,7 @@
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "l4l",
|
"owner": "l4l",
|
||||||
|
"ref": "master",
|
||||||
"repo": "yofi",
|
"repo": "yofi",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
|
24
flake.nix
24
flake.nix
|
@ -8,6 +8,8 @@
|
||||||
nixos-anywhere.url = github:numtide/nixos-anywhere/main;
|
nixos-anywhere.url = github:numtide/nixos-anywhere/main;
|
||||||
nixos-anywhere.inputs.nixpkgs.follows = "nixpkgs";
|
nixos-anywhere.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
|
nixpkgs-wayland.url = "github:nix-community/nixpkgs-wayland";
|
||||||
|
|
||||||
colmena = {
|
colmena = {
|
||||||
url = "github:zhaofengli/colmena";
|
url = "github:zhaofengli/colmena";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
@ -28,8 +30,9 @@
|
||||||
url = "github:Iaphetes/aphorme_launcher/main";
|
url = "github:Iaphetes/aphorme_launcher/main";
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
yofi = {
|
yofi = {
|
||||||
url = "github:l4l/yofi";
|
url = "github:l4l/yofi/master";
|
||||||
flake = true;
|
flake = true;
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
@ -48,6 +51,11 @@
|
||||||
url = "github:MagmaWM/MagmaWM";
|
url = "github:MagmaWM/MagmaWM";
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
salut = {
|
||||||
|
url = "gitlab:snakedye/salut";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs @ {
|
outputs = inputs @ {
|
||||||
|
@ -71,6 +79,8 @@
|
||||||
system = builtins.elemAt systems 0;
|
system = builtins.elemAt systems 0;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
# FIXME: this doesn't seem to work to apply overlays into a node's nixpkgs import
|
||||||
|
# try this instead: https://github.com/zhaofengli/colmena/issues/60#issuecomment-1510496861
|
||||||
(builtins.map (nodeName:
|
(builtins.map (nodeName:
|
||||||
import ./nix/os/devices/${nodeName} {
|
import ./nix/os/devices/${nodeName} {
|
||||||
repoFlake = self;
|
repoFlake = self;
|
||||||
|
@ -114,7 +124,6 @@
|
||||||
# date = "1.60.0";
|
# date = "1.60.0";
|
||||||
# }
|
# }
|
||||||
);
|
);
|
||||||
|
|
||||||
in {
|
in {
|
||||||
dcpj4110dwDriver = dcpj4110dw.driver;
|
dcpj4110dwDriver = dcpj4110dw.driver;
|
||||||
dcpj4110dwCupswrapper = dcpj4110dw.cupswrapper;
|
dcpj4110dwCupswrapper = dcpj4110dw.cupswrapper;
|
||||||
|
@ -137,6 +146,17 @@
|
||||||
inherit craneLib;
|
inherit craneLib;
|
||||||
src = inputs.magmawm;
|
src = inputs.magmawm;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
salut = craneLib.buildPackage {
|
||||||
|
src = inputs.salut;
|
||||||
|
nativeBuildInputs = [
|
||||||
|
pkgs.pkg-config
|
||||||
|
];
|
||||||
|
buildInputs = [
|
||||||
|
pkgs.libxkbcommon
|
||||||
|
pkgs.fontconfig
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
formatter = pkgs.alejandra;
|
formatter = pkgs.alejandra;
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
{
|
{
|
||||||
inputs,
|
|
||||||
pkgs,
|
pkgs,
|
||||||
config,
|
config,
|
||||||
# these come in via home-manager.extraSpecialArgs and are specific to each node
|
# these come in via home-manager.extraSpecialArgs and are specific to each node
|
||||||
|
@ -18,13 +17,11 @@ in {
|
||||||
|
|
||||||
# ../profiles/gnome-desktop.nix
|
# ../profiles/gnome-desktop.nix
|
||||||
../profiles/sway-desktop.nix
|
../profiles/sway-desktop.nix
|
||||||
../profiles/experimental-desktop.ni
|
# ../profiles/experimental-desktop.nix
|
||||||
|
|
||||||
../programs/redshift.nix
|
../programs/redshift.nix
|
||||||
../programs/espanso.nix
|
|
||||||
../programs/gpg-agent.nix
|
../programs/gpg-agent.nix
|
||||||
|
|
||||||
../programs/radicale.nix
|
|
||||||
|
|
||||||
../programs/firefox.nix
|
../programs/firefox.nix
|
||||||
../programs/chromium.nix
|
../programs/chromium.nix
|
||||||
|
@ -33,6 +30,10 @@ in {
|
||||||
../programs/neovim.nix
|
../programs/neovim.nix
|
||||||
../programs/pass.nix
|
../programs/pass.nix
|
||||||
../programs/vscode
|
../programs/vscode
|
||||||
|
|
||||||
|
# TODO: broken since nixos-23.05
|
||||||
|
# ../programs/radicale.nix
|
||||||
|
# ../programs/espanso.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
home.sessionVariables.HM_CONFIG = "graphical-fullblown";
|
home.sessionVariables.HM_CONFIG = "graphical-fullblown";
|
||||||
|
@ -47,7 +48,6 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
home.packages =
|
home.packages =
|
||||||
[]
|
[]
|
||||||
++ (with pkgs; [
|
++ (with pkgs; [
|
||||||
|
@ -79,7 +79,6 @@ in {
|
||||||
|
|
||||||
# Archive Managers
|
# Archive Managers
|
||||||
sshfs-fuse
|
sshfs-fuse
|
||||||
xarchive
|
|
||||||
p7zip
|
p7zip
|
||||||
zip
|
zip
|
||||||
unzip
|
unzip
|
||||||
|
@ -92,16 +91,15 @@ in {
|
||||||
yubikey-manager-qt
|
yubikey-manager-qt
|
||||||
yubikey-personalization
|
yubikey-personalization
|
||||||
yubikey-personalization-gui
|
yubikey-personalization-gui
|
||||||
gnome.gnome-keyring
|
|
||||||
# gnome.seahorse
|
# gnome.gnome-keyring
|
||||||
|
gcr gnome.seahorse
|
||||||
|
|
||||||
# Language Support
|
# Language Support
|
||||||
hunspellDicts.en-us
|
hunspellDicts.en-us
|
||||||
hunspellDicts.de-de
|
hunspellDicts.de-de
|
||||||
|
|
||||||
# Messaging/Communication
|
# Messaging/Communication
|
||||||
signal-desktop
|
|
||||||
pkgsUnstable.session-desktop
|
|
||||||
# pidgin
|
# pidgin
|
||||||
hexchat
|
hexchat
|
||||||
schildichat-desktop
|
schildichat-desktop
|
||||||
|
@ -111,11 +109,13 @@ in {
|
||||||
# pkgsUnstable.jitsi-meet-electron
|
# pkgsUnstable.jitsi-meet-electron
|
||||||
thunderbird
|
thunderbird
|
||||||
evolution # gnome4.glib_networking
|
evolution # gnome4.glib_networking
|
||||||
kotatogram-desktop
|
|
||||||
zoom-us
|
# FIXME: depends on insecure openssl 1.1.1t
|
||||||
|
# kotatogram-desktop
|
||||||
|
|
||||||
thunderbird
|
thunderbird
|
||||||
gnome.cheese
|
# gnome.cheese
|
||||||
pkgsMaster.discord
|
pkgsUnstable.discord
|
||||||
|
|
||||||
# Virtualization
|
# Virtualization
|
||||||
# virtmanager
|
# virtmanager
|
||||||
|
@ -181,7 +181,8 @@ in {
|
||||||
# Document Processing and Management
|
# Document Processing and Management
|
||||||
mendeley
|
mendeley
|
||||||
evince
|
evince
|
||||||
(pkgsUnstable.logseq.override (_: {electron = pkgs.electron_20;}))
|
pkgsUnstable.logseq
|
||||||
|
# (pkgsUnstable.logseq.override (_: {electron = pkgs.electron_20;}))
|
||||||
|
|
||||||
# File Synchronzation
|
# File Synchronzation
|
||||||
dropbox
|
dropbox
|
||||||
|
|
|
@ -12,17 +12,9 @@ in {
|
||||||
../profiles/wayland-desktop.nix
|
../profiles/wayland-desktop.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = [
|
||||||
# experimental WMs
|
# experimental WMs
|
||||||
packages'.jay
|
packages'.jay
|
||||||
packages'.magmawm
|
packages'.magmawm
|
||||||
|
|
||||||
# swayidle
|
|
||||||
# swaylock
|
|
||||||
|
|
||||||
# # fonts
|
|
||||||
# noto-fonts
|
|
||||||
# font-awesome
|
|
||||||
# noto-fonts-emoji
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,6 +13,7 @@ in {
|
||||||
gnome-keyring.enable = false;
|
gnome-keyring.enable = false;
|
||||||
blueman-applet.enable = true;
|
blueman-applet.enable = true;
|
||||||
flameshot.enable = true;
|
flameshot.enable = true;
|
||||||
|
pasystray.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# TODO: remove this comment once i'm sure everything works
|
# TODO: remove this comment once i'm sure everything works
|
||||||
|
|
|
@ -2,38 +2,139 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
config,
|
config,
|
||||||
lib,
|
lib,
|
||||||
|
packages',
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (import ../lib.nix {}) mkSimpleTrayService;
|
inherit (import ../lib.nix {}) mkSimpleTrayService;
|
||||||
|
|
||||||
|
lockCmd = "${pkgs.swaylock}/bin/swaylock -efF --color '#000000'";
|
||||||
|
displayOffCmd = "${pkgs.sway}/bin/swaymsg 'output * power off'";
|
||||||
|
displayOnCmd = "${pkgs.sway}/bin/swaymsg 'output * power on'";
|
||||||
|
swapOutputWorkspaces = ../../../scripts/sway-swapoutputworkspaces.sh;
|
||||||
|
|
||||||
in {
|
in {
|
||||||
imports = [
|
imports = [
|
||||||
../profiles/wayland-desktop.nix
|
../profiles/wayland-desktop.nix
|
||||||
|
../programs/waybar.nix
|
||||||
|
../programs/salut.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
services = {
|
||||||
swayidle
|
blueman-applet.enable = true;
|
||||||
swaylock
|
flameshot.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
home.packages = [
|
||||||
|
pkgs.swayidle
|
||||||
|
pkgs.swaylock
|
||||||
|
|
||||||
|
packages'.yofi
|
||||||
|
pkgs.fuzzel
|
||||||
|
|
||||||
|
# required by any bar that has a tray plugin
|
||||||
|
pkgs.libappindicator-gtk3
|
||||||
|
|
||||||
|
|
||||||
|
## themes
|
||||||
|
pkgs.gnome.adwaita-icon-theme
|
||||||
|
pkgs.hicolor-icon-theme
|
||||||
|
pkgs.gnome-icon-theme
|
||||||
|
|
||||||
|
|
||||||
|
## fonts
|
||||||
|
pkgs.dejavu_fonts # just a basic good fond
|
||||||
|
pkgs.font-awesome_5 # needed by i3status-rust
|
||||||
|
pkgs.nerdfonts
|
||||||
|
pkgs.font-awesome
|
||||||
|
pkgs.roboto
|
||||||
|
pkgs.ttf_bitstream_vera
|
||||||
|
|
||||||
|
# from the wiki
|
||||||
|
pkgs.noto-fonts
|
||||||
|
pkgs.noto-fonts-cjk
|
||||||
|
pkgs.noto-fonts-cjk-sans
|
||||||
|
pkgs.noto-fonts-cjk-serif
|
||||||
|
pkgs.noto-fonts-emoji
|
||||||
|
pkgs.noto-fonts-emoji-blob-bin
|
||||||
|
pkgs.noto-fonts-extra
|
||||||
|
pkgs.noto-fonts-lgc-plus
|
||||||
|
|
||||||
|
pkgs.liberation_ttf
|
||||||
|
pkgs.fira-code
|
||||||
|
pkgs.fira-code-symbols
|
||||||
|
pkgs.mplus-outline-fonts.githubRelease
|
||||||
|
pkgs.dina-font
|
||||||
|
pkgs.monoid
|
||||||
|
pkgs.hermit
|
||||||
|
|
||||||
|
# by colemickens
|
||||||
|
pkgs.gelasio # metric-compatible with Georgia
|
||||||
|
pkgs.powerline-symbols
|
||||||
|
pkgs.iosevka-comfy.comfy-fixed
|
||||||
|
|
||||||
|
|
||||||
# fonts
|
|
||||||
noto-fonts
|
|
||||||
font-awesome
|
|
||||||
noto-fonts-emoji
|
|
||||||
];
|
];
|
||||||
|
|
||||||
wayland.windowManager.sway = {
|
wayland.windowManager.sway = {
|
||||||
enable = true;
|
enable = true;
|
||||||
systemdIntegration = true;
|
systemdIntegration = true;
|
||||||
|
xwayland = false;
|
||||||
|
|
||||||
config = let
|
config = let
|
||||||
modifier = "Mod4";
|
modifier = "Mod4";
|
||||||
|
inherit (config.wayland.windowManager.sway.config) left right up down;
|
||||||
in {
|
in {
|
||||||
inherit modifier;
|
inherit modifier;
|
||||||
|
bars = [];
|
||||||
|
|
||||||
|
input = {
|
||||||
|
"type:keyboard" = {
|
||||||
|
xkb_layout = "us";
|
||||||
|
xkb_variant = "altgr-intl";
|
||||||
|
xkb_options = "nodeadkeys";
|
||||||
|
};
|
||||||
|
|
||||||
|
"type:touchpad" = {
|
||||||
|
natural_scroll = "enabled";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
keybindings = lib.mkOptionDefault {
|
keybindings = lib.mkOptionDefault {
|
||||||
"${modifier}+Ctrl+l" = "exec ${pkgs.swaylock}/bin/swaylock -fF";
|
# as of 2023-05-21 the `!!` arg parsing mode was broken for me on yofi
|
||||||
"XF86AudioPlay" = "exec ${pkgs.playerctl}/bin/playerctl play-pause";
|
# "${modifier}+d" = "exec ${packages'.yofi}/bin/yofi binapps";
|
||||||
|
"${modifier}+d" = "exec ${pkgs.fuzzel}/bin/fuzzel";
|
||||||
|
|
||||||
|
# only 1-9 exist on the default config
|
||||||
|
"${modifier}+0" = "workspace number 0";
|
||||||
|
"${modifier}+Shift+0" = "move container to workspace number 0";
|
||||||
|
|
||||||
|
# move workspace to output
|
||||||
|
"${modifier}+Control+Shift+${left}" = "move workspace to output left";
|
||||||
|
"${modifier}+Control+Shift+${right}" = "move workspace to output right";
|
||||||
|
"${modifier}+Control+Shift+${up}" = "move workspace to output up";
|
||||||
|
"${modifier}+Control+Shift+${down}" = "move workspace to output down";
|
||||||
|
# move workspace to output with arrow keys
|
||||||
|
"${modifier}+Control+Shift+Left" = "move workspace to output left";
|
||||||
|
"${modifier}+Control+Shift+Right" = "move workspace to output right";
|
||||||
|
"${modifier}+Control+Shift+Up" = "move workspace to output up";
|
||||||
|
"${modifier}+Control+Shift+Down" = "move workspace to output down";
|
||||||
|
|
||||||
|
"${modifier}+Shift+e" = "exec swaymsg exit";
|
||||||
|
"${modifier}+q" = "kill";
|
||||||
|
"${modifier}+x" = "exec ${swapOutputWorkspaces}";
|
||||||
|
|
||||||
|
"${modifier}+Ctrl+l" = "exec ${lockCmd}";
|
||||||
|
|
||||||
|
"--locked XF86AudioPlay" = "exec ${pkgs.playerctl}/bin/playerctl play-pause";
|
||||||
"XF86AudioPrev" = "exec ${pkgs.playerctl}/bin/playerctl previous";
|
"XF86AudioPrev" = "exec ${pkgs.playerctl}/bin/playerctl previous";
|
||||||
"XF86AudioNext" = "exec ${pkgs.playerctl}/bin/playerctl next";
|
"XF86AudioNext" = "exec ${pkgs.playerctl}/bin/playerctl next";
|
||||||
|
|
||||||
|
"XF86AudioRaiseVolume" = "exec ${pkgs.pulsemixer}/bin/pulsemixer --change-volume +5";
|
||||||
|
"XF86AudioLowerVolume" = "exec ${pkgs.pulsemixer}/bin/pulsemixer --change-volume -5";
|
||||||
|
"--locked XF86AudioMute" = "exec ${pkgs.pulsemixer}/bin/pulsemixer --toggle-mute";
|
||||||
|
|
||||||
|
# TODO: screenshot util, flameshot doesn't work in the packaged version
|
||||||
|
"Print" = "exec ${pkgs.flameshot}/bin/flameshot gui";
|
||||||
};
|
};
|
||||||
|
|
||||||
terminal = "alacritty";
|
terminal = "alacritty";
|
||||||
|
@ -41,44 +142,33 @@ in {
|
||||||
# Launch Firefox on start
|
# Launch Firefox on start
|
||||||
# {command = "firefox";}
|
# {command = "firefox";}
|
||||||
# {command = "gnome-keyring --replace"}
|
# {command = "gnome-keyring --replace"}
|
||||||
|
{command = "systemctl --user restart waybar";}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
colors.focused = lib.mkOptionDefault {
|
||||||
fonts = {
|
childBorder = lib.mkForce "#ffa500";
|
||||||
names = [ "Noto Sans" "Font Awesome 5 Free" ];
|
|
||||||
style = "Heavy";
|
|
||||||
size = 10.0;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
window.border = 4;
|
||||||
#fonts = {
|
|
||||||
# names = [ "DejaVu Sans Mono" "FontAwesome5Free" ];
|
|
||||||
# style = "Bold Semi-Condensed";
|
|
||||||
# size = 11.0;
|
|
||||||
#};
|
|
||||||
|
|
||||||
colors.focused = {
|
|
||||||
childBorder = "#ffa500";
|
|
||||||
|
|
||||||
# border = "#ffa500";
|
|
||||||
|
|
||||||
# TODO: refer to the defaults for these
|
|
||||||
border = "#4c7899";
|
|
||||||
background = "#285577";
|
|
||||||
text = "#ffffff";
|
|
||||||
indicator = "#2e9ef4";
|
|
||||||
};
|
|
||||||
|
|
||||||
window = {
|
|
||||||
border = 4;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
services.swayidle = {
|
services.swayidle = {
|
||||||
enable = true;
|
enable = true;
|
||||||
timeouts = [
|
timeouts = [
|
||||||
{ timeout = 60 * 5; command = "${pkgs.swaylock}/bin/swaylock -fF"; }
|
{ timeout = 10; command = "if ${pkgs.procps}/bin/pgrep -x swaylock; then ${displayOffCmd}; fi"; resumeCommand = displayOnCmd; }
|
||||||
|
{ timeout = 60 * 5; command = lockCmd; }
|
||||||
|
{ timeout = 60 * 6; command = displayOffCmd; resumeCommand = displayOnCmd; }
|
||||||
|
];
|
||||||
|
events = [
|
||||||
|
{ event = "before-sleep";
|
||||||
|
command = builtins.concatStringsSep "; " [
|
||||||
|
lockCmd
|
||||||
|
"${pkgs.playerctl}/bin/playerctl pause"
|
||||||
|
];
|
||||||
|
}
|
||||||
|
{ event = "after-resume"; command = displayOnCmd; }
|
||||||
|
{ event = "lock"; command = lockCmd; }
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,19 +1,34 @@
|
||||||
{
|
{
|
||||||
pkgs,
|
pkgs,
|
||||||
config,
|
config,
|
||||||
|
lib,
|
||||||
|
repoFlake,
|
||||||
|
nodeFlake,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (import ../lib.nix {}) mkSimpleTrayService;
|
inherit (import ../lib.nix {}) mkSimpleTrayService;
|
||||||
|
|
||||||
|
nixpkgs-2211 = nodeFlake.inputs.nixpkgs-2211.legacyPackages.${pkgs.system};
|
||||||
|
nixpkgs-wayland' = repoFlake.inputs.nixpkgs-wayland.packages.${pkgs.system};
|
||||||
|
|
||||||
|
wayprompt = nixpkgs-wayland'.wayprompt;
|
||||||
in {
|
in {
|
||||||
services.gpg-agent.pinentryFlavor = "gtk2";
|
|
||||||
fonts.fontconfig.enable = true;
|
fonts.fontconfig.enable = true;
|
||||||
|
|
||||||
|
# services.gpg-agent.pinentryFlavor = lib.mkForce null;
|
||||||
|
# services.gpg-agent.extraConfig = ''
|
||||||
|
# pinentry-program "${wayprompt}/bin/pinentry-wayprompt"
|
||||||
|
# '';
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
wlr-randr
|
wlr-randr
|
||||||
wayout
|
wayout
|
||||||
wl-clipboard
|
wl-clipboard
|
||||||
wmctrl
|
wmctrl
|
||||||
|
|
||||||
|
wayprompt
|
||||||
|
nixpkgs-wayland'.shotman
|
||||||
|
|
||||||
# identifies key input syms
|
# identifies key input syms
|
||||||
wev
|
wev
|
||||||
|
|
||||||
|
@ -25,6 +40,35 @@ in {
|
||||||
pasystray
|
pasystray
|
||||||
qt5.qtwayland
|
qt5.qtwayland
|
||||||
qt6.qtwayland
|
qt6.qtwayland
|
||||||
|
|
||||||
|
# probably required by flameshot
|
||||||
|
# xdg-desktop-portal xdg-desktop-portal-wlr
|
||||||
|
# grim
|
||||||
|
|
||||||
|
(signal-desktop.overrideAttrs (old: {
|
||||||
|
preFixup = old.preFixup + ''
|
||||||
|
gappsWrapperArgs+=(
|
||||||
|
--add-flags "--enable-features=UseOzonePlatform"
|
||||||
|
--add-flags "--ozone-platform=wayland"
|
||||||
|
)
|
||||||
|
'';
|
||||||
|
}))
|
||||||
|
|
||||||
|
((pkgs.session-desktop.override (old: {
|
||||||
|
inherit (nixpkgs-2211) appimageTools;
|
||||||
|
}))
|
||||||
|
.overrideAttrs(old: {
|
||||||
|
nativeBuildInputs = old.nativeBuildInputs ++ [
|
||||||
|
pkgs.wrapGAppsHook
|
||||||
|
];
|
||||||
|
|
||||||
|
preFixup = (old.preFixup or "") + ''
|
||||||
|
gappsWrapperArgs+=(
|
||||||
|
--add-flags "--enable-features=UseOzonePlatform"
|
||||||
|
--add-flags "--ozone-platform=wayland"
|
||||||
|
)
|
||||||
|
'';
|
||||||
|
}))
|
||||||
];
|
];
|
||||||
|
|
||||||
home.sessionVariables = {
|
home.sessionVariables = {
|
||||||
|
|
|
@ -1,4 +1,8 @@
|
||||||
{lib, ...}: {
|
{lib, pkgs, ...}: {
|
||||||
|
home.packages = [
|
||||||
|
pkgs.gcr
|
||||||
|
];
|
||||||
|
|
||||||
programs.gpg.enable = true;
|
programs.gpg.enable = true;
|
||||||
services.gpg-agent = {
|
services.gpg-agent = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
@ -14,6 +14,11 @@
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
hash = "sha256-Mukjzjumv9VL+A0maU0K/SliWrgeRjAeiEdN5a83G0I=";
|
hash = "sha256-Mukjzjumv9VL+A0maU0K/SliWrgeRjAeiEdN5a83G0I=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
pkgs.libxcrypt-legacy
|
||||||
|
];
|
||||||
|
|
||||||
};
|
};
|
||||||
radicale-storage-decsync = pkgs.python3Packages.buildPythonPackage rec {
|
radicale-storage-decsync = pkgs.python3Packages.buildPythonPackage rec {
|
||||||
pname = "radicale_storage_decsync";
|
pname = "radicale_storage_decsync";
|
||||||
|
@ -24,7 +29,17 @@
|
||||||
hash = "sha256-X+0MT5o2PjsKxca5EDI+rYyQDmUtbRoELDr6e4YXKCg=";
|
hash = "sha256-X+0MT5o2PjsKxca5EDI+rYyQDmUtbRoELDr6e4YXKCg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [pkgs.radicale];
|
buildInputs = [
|
||||||
|
pkgs.radicale
|
||||||
|
pkgs.libxcrypt-legacy
|
||||||
|
pkgs.libxcrypt
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeCheckInputs = [
|
||||||
|
pkgs.libxcrypt-legacy
|
||||||
|
pkgs.libxcrypt
|
||||||
|
];
|
||||||
|
|
||||||
propagatedBuildInputs = [libdecsync pkgs.python3Packages.setuptools];
|
propagatedBuildInputs = [libdecsync pkgs.python3Packages.setuptools];
|
||||||
};
|
};
|
||||||
radicale-decsync = pkgs.radicale.overrideAttrs (old: {
|
radicale-decsync = pkgs.radicale.overrideAttrs (old: {
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
packages',
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
home.packages = [
|
||||||
|
packages'.salut
|
||||||
|
];
|
||||||
|
|
||||||
|
home.file.".config/salut/config.ini" = {
|
||||||
|
enable = true;
|
||||||
|
text = ''
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,196 +1,81 @@
|
||||||
{ pkgs, config, inputs, ... }:
|
{ pkgs, config, repoFlake, ... }:
|
||||||
|
|
||||||
let
|
|
||||||
rogScript = pkgs.writeShellScript "waybar-rog.sh" ''
|
|
||||||
set -euo pipefail
|
|
||||||
val="$(${pkgs.asusctl}/bin/asusctl profile -p)"
|
|
||||||
if [[ "''${val}" == *"Performance"* ]]; then
|
|
||||||
echo $'{"text": "rog prf"}';
|
|
||||||
elif [[ "''${val}" == *"Balanced"* ]]; then
|
|
||||||
echo $'{"text": "rog bal"}';
|
|
||||||
elif [[ "''${val}" == *"Quiet"* ]]; then
|
|
||||||
echo $'{"text": "rog qui"}';
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
|
|
||||||
pppScript = pkgs.writeShellScript "waybar-ppp.sh" ''
|
|
||||||
set -euo pipefail
|
|
||||||
val="$(${pkgs.power-profiles-daemon}/bin/powerprofilesctl get)"
|
|
||||||
if [[ "''${val}" == "performance" ]]; then
|
|
||||||
echo $'{"text": "ppp prf"}';
|
|
||||||
elif [[ "''${val}" == "balanced" ]]; then
|
|
||||||
echo $'{"text": "ppp bal"}';
|
|
||||||
elif [[ "''${val}" == "power-saver" ]]; then
|
|
||||||
echo $'{"text": "ppp pwr"}';
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
extraModules = if config.networking.hostName != "zeph" then { } else {
|
|
||||||
"custom/rog" = {
|
|
||||||
exec = "${rogScript}";
|
|
||||||
return-type = "json";
|
|
||||||
interval = 10;
|
|
||||||
};
|
|
||||||
"custom/ppp" = {
|
|
||||||
exec = "${pppScript}";
|
|
||||||
return-type = "json";
|
|
||||||
interval = 10;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
# # jobpath = "/run/user/1000/srht/jobs";
|
|
||||||
# # jobs = {
|
|
||||||
# # "niche" = "niche";
|
|
||||||
# # "n-w" = "nixpkgs-wayland";
|
|
||||||
# # "f-f-n" = "flake-firefox-nightly";
|
|
||||||
# # };
|
|
||||||
|
|
||||||
# # suffix = pkgs.lib.mapAttrsToList (k: v: ''
|
|
||||||
# # status="$("${pkgs.jq}/bin/jq" -r '[.results[] | select(.tags=="${v}" and .status!="running" and .status!="cancelled")][0] | .status' "${jobpath}/data")"
|
|
||||||
# # echo "{\"text\":\"''${status}\", \"class\":\"srht-''${status}\"}" > "${jobpath}/${v}-json"
|
|
||||||
# # '') jobs;
|
|
||||||
|
|
||||||
# # jobsScript = pkgs.writeShellScriptBin "jobs.sh" (pkgs.lib.concatStrings (
|
|
||||||
# # [''
|
|
||||||
# # TOKEN=$(cat ${config.sops.secrets."srht-pat".path})
|
|
||||||
# # BUILD_HOST="https://builds.sr.ht"
|
|
||||||
# # "${pkgs.coreutils}/bin/mkdir" -p "${jobpath}"
|
|
||||||
# # "${pkgs.curl}/bin/curl" \
|
|
||||||
# # -H "Authorization:token ''${TOKEN}" \
|
|
||||||
# # -H "Content-Type: application/json" -X GET \
|
|
||||||
# # "''${BUILD_HOST}/api/jobs" > "${jobpath}/data"
|
|
||||||
# # ''] ++ suffix ));
|
|
||||||
# networktoggle = pkgs.writeShellScriptBin "networktoggle.sh" ''
|
|
||||||
# if ip link | grep wlan; then
|
|
||||||
# sudo ${pkgs.util-linux}/bin/rfkill toggle wlan
|
|
||||||
# sudo ${pkgs.systemd}/bin/networkctl reconfigure wlan0
|
|
||||||
# ${pkgs.libnotify}/bin/notify-send "toggled wlan0"
|
|
||||||
# else
|
|
||||||
# ${pkgs.libnotify}/bin/notify-send "no wlan to toggle"
|
|
||||||
# fi
|
|
||||||
# '';
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
config = {
|
programs.waybar = {
|
||||||
# sops.secrets."srht-pat" = {
|
enable = true;
|
||||||
# owner = "cole";
|
package = repoFlake.inputs.nixpkgs-wayland.outputs.packages.${pkgs.stdenv.hostPlatform.system}.waybar;
|
||||||
# group = "cole";
|
# style = pkgs.lib.readFile ./waybar.css;
|
||||||
# };
|
systemd.enable = true;
|
||||||
|
settings = {
|
||||||
|
mainBar = {
|
||||||
|
layer = "top";
|
||||||
|
position = "bottom";
|
||||||
|
height = 30;
|
||||||
|
output = ["*"];
|
||||||
|
# output = [
|
||||||
|
# "eDP-1"
|
||||||
|
# "DP-*"
|
||||||
|
# ];
|
||||||
|
|
||||||
home-manager.users.cole = { pkgs, ... }: {
|
modules-left = [
|
||||||
# systemd.user.services."srht-jobs-status" = {
|
"sway/workspaces"
|
||||||
# Unit.Description = "check srht-jobs status";
|
"sway/mode"
|
||||||
# Service = {
|
# "wlr/taskbar"
|
||||||
# Type = "oneshot";
|
];
|
||||||
# ExecStart = "${jobsScript}/bin/jobs.sh";
|
|
||||||
# };
|
|
||||||
# };
|
|
||||||
# systemd.user.timers."srht-jobs-status" = {
|
|
||||||
# Unit.Description = "check srht jobs status";
|
|
||||||
# Timer = { OnBootSec = "1m"; OnUnitInactiveSec = "1m"; Unit = "srht-jobs-status.service"; };
|
|
||||||
# Install.WantedBy = [ "default.target" ];
|
|
||||||
# # {
|
|
||||||
# # wantedBy = [ "timers.target" ];
|
|
||||||
# # partOf = [ "srht-${repo}.service" ];
|
|
||||||
# # timerConfig.OnCalendar = "hourly";
|
|
||||||
# # }
|
|
||||||
# };
|
|
||||||
home.packages = [ pkgs.libappindicator-gtk3 ];
|
|
||||||
programs.waybar = {
|
|
||||||
enable = true;
|
|
||||||
package = inputs.nixpkgs-wayland.outputs.packages.${pkgs.stdenv.hostPlatform.system}.waybar;
|
|
||||||
style = pkgs.lib.readFile ./waybar.css;
|
|
||||||
systemd.enable = true;
|
|
||||||
settings = [{
|
|
||||||
# ipc = true;
|
|
||||||
layer = "top";
|
|
||||||
# position = "top";
|
|
||||||
modules-left = [
|
|
||||||
"sway/mode"
|
|
||||||
"sway/workspaces"
|
|
||||||
];
|
|
||||||
modules-center = [
|
|
||||||
"wlr/workspaces"
|
|
||||||
];
|
|
||||||
modules-right = [
|
|
||||||
# "keyboard-state"
|
|
||||||
# "idle_inhibitor"
|
|
||||||
"pulseaudio"
|
|
||||||
"backlight"
|
|
||||||
"tray"
|
|
||||||
]
|
|
||||||
++ (builtins.attrNames extraModules)
|
|
||||||
++ [
|
|
||||||
"cpu"
|
|
||||||
"memory"
|
|
||||||
"network"
|
|
||||||
"temperature"
|
|
||||||
"battery"
|
|
||||||
"clock"
|
|
||||||
"clock#date"
|
|
||||||
];
|
|
||||||
|
|
||||||
modules = ({
|
"sway/workspaces" = {
|
||||||
"sway/workspaces" = {
|
disable-scroll = true;
|
||||||
all-outputs = true;
|
all-outputs = false;
|
||||||
disable-scroll-wraparound = true;
|
};
|
||||||
#enable-bar-scroll = true;
|
|
||||||
};
|
|
||||||
"sway/mode" = { tooltip = false; };
|
|
||||||
|
|
||||||
|
modules-center = [
|
||||||
|
"sway/window"
|
||||||
|
# "custom/hello-from-waybar"
|
||||||
|
];
|
||||||
|
|
||||||
# # TODO:
|
modules-right = [
|
||||||
# keyboard-state = {
|
"tray"
|
||||||
# "numlock" = true;
|
|
||||||
# "capslock" = true;
|
"cpu"
|
||||||
# "format" = "{name} {icon}";
|
"memory"
|
||||||
# "format-icons" = {
|
"temperature"
|
||||||
# "locked" = "+";
|
"custom/fan"
|
||||||
# "unlocked" = "-";
|
"battery"
|
||||||
# };
|
"pulseaudio"
|
||||||
# };
|
"clock"
|
||||||
"wlr/taskbar" = { };
|
"clock#date"
|
||||||
temperature = {
|
];
|
||||||
format = "tmp {temperatureC}";
|
|
||||||
};
|
tray.spacing = 10;
|
||||||
idle_inhibitor = {
|
|
||||||
format = "iil {icon}";
|
cpu.format = " {}%";
|
||||||
format-icons = {
|
memory.format = " {}%";
|
||||||
activated = "[x]";
|
"temperature" = {
|
||||||
deactivated = "[ ]";
|
hwmon-path = "/sys/class/hwmon/hwmon3/temp1_input";
|
||||||
};
|
format = " {temperatureC} °C";
|
||||||
};
|
};
|
||||||
pulseaudio = {
|
"custom/fan" = {
|
||||||
format = "vol {volume}";
|
|
||||||
on-click-middle = "${pkgs.sway}/bin/swaymsg exec \"${pkgs.pavucontrol}/bin/pavucontrol\"";
|
format = " {} rpm ";
|
||||||
};
|
exec = "${pkgs.lm_sensors}/bin/sensors | ${pkgs.gawk}/bin/awk '/fan1:/ {print $2}'";
|
||||||
network = {
|
interval = 5;
|
||||||
format-wifi = "net {signalStrength}";
|
};
|
||||||
format-ethernet = "eth";
|
battery.format = "🔋 {}%";
|
||||||
};
|
pulseaudio = {
|
||||||
cpu.interval = 2;
|
format = "🔉 {volume}%";
|
||||||
cpu.format = "cpu {usage}";
|
# on-click-middle = ''${pkgs.sway}/bin/swaymsg exec "${pkgs.pavucontrol}/bin/pavucontrol"'';
|
||||||
memory.format = "mem {}";
|
};
|
||||||
backlight = {
|
"clock#date".format = "{:%d %b %Y}";
|
||||||
format = "nit {percent}";
|
clock.format = "{:%H:%M %p}";
|
||||||
on-scroll-up = "${pkgs.brightnessctl}/bin/brightnessctl set 2%+";
|
|
||||||
on-scroll-down = "${pkgs.brightnessctl}/bin/brightnessctl set 2%-";
|
# "custom/hello-from-waybar" = {
|
||||||
};
|
# format = "hello {}";
|
||||||
tray.spacing = 10;
|
# max-length = 40;
|
||||||
# battery
|
# interval = "once";
|
||||||
clock = {
|
# exec = pkgs.writeShellScript "hello-from-waybar" ''
|
||||||
format = "{:%d %b %Y}";
|
# echo "from within waybar"
|
||||||
};
|
# '';
|
||||||
"clock#date" = {
|
# };
|
||||||
format = "{:%H:%M %p}";
|
|
||||||
};
|
|
||||||
battery = {
|
|
||||||
format = "bat {}";
|
|
||||||
states = {
|
|
||||||
warning = 25;
|
|
||||||
critical = 15;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
} // extraModules);
|
|
||||||
}];
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -74,7 +74,7 @@ in {
|
||||||
# don't cd into directories when executed
|
# don't cd into directories when executed
|
||||||
unsetopt AUTO_CD
|
unsetopt AUTO_CD
|
||||||
|
|
||||||
export NIX_PATH="${pkgs.path}"
|
export NIX_PATH="nixpkgs=${pkgs.path}"
|
||||||
|
|
||||||
# print lines without termination
|
# print lines without termination
|
||||||
setopt PROMPT_CR
|
setopt PROMPT_CR
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
pip
|
pip
|
||||||
virtualenv
|
virtualenv
|
||||||
cffi
|
cffi
|
||||||
pyopenssl
|
# pyopenssl
|
||||||
urllib3
|
urllib3
|
||||||
# mistune (insecure)
|
# mistune (insecure)
|
||||||
sympy
|
sympy
|
||||||
|
|
|
@ -9,6 +9,6 @@ let
|
||||||
imports = lib.mapAttrsToList toImport (lib.filterAttrs filterCaches (builtins.readDir folder));
|
imports = lib.mapAttrsToList toImport (lib.filterAttrs filterCaches (builtins.readDir folder));
|
||||||
in {
|
in {
|
||||||
inherit imports;
|
inherit imports;
|
||||||
nix.binaryCaches = ["https://cache.nixos.org/"];
|
nix.settings.substituters = ["https://cache.nixos.org/"];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
|
|
||||||
{
|
{
|
||||||
nix = {
|
nix = {
|
||||||
binaryCaches = [
|
settings.substituters = [
|
||||||
"https://nixpkgs-wayland.cachix.org"
|
"https://nixpkgs-wayland.cachix.org"
|
||||||
];
|
];
|
||||||
binaryCachePublicKeys = [
|
settings.trusted-public-keys = [
|
||||||
"nixpkgs-wayland.cachix.org-1:3lwxaILxMRkVhehr5StQprHdEo4IrE8sRho9R9HOLYA="
|
"nixpkgs-wayland.cachix.org-1:3lwxaILxMRkVhehr5StQprHdEo4IrE8sRho9R9HOLYA="
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
imports = [
|
imports = [
|
||||||
../../profiles/common/configuration.nix
|
../../profiles/common/configuration.nix
|
||||||
../../profiles/graphical/configuration.nix
|
../../profiles/graphical/configuration.nix
|
||||||
|
../../profiles/graphical-gnome-xorg.nix
|
||||||
../../modules/opinionatedDisk.nix
|
../../modules/opinionatedDisk.nix
|
||||||
|
|
||||||
./system.nix
|
./system.nix
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
imports = [
|
imports = [
|
||||||
../../profiles/common/configuration.nix
|
../../profiles/common/configuration.nix
|
||||||
../../profiles/graphical/configuration.nix
|
../../profiles/graphical/configuration.nix
|
||||||
|
../../profiles/graphical-gnome-xorg.nix
|
||||||
|
|
||||||
./system.nix
|
./system.nix
|
||||||
./hw.nix
|
./hw.nix
|
||||||
|
|
|
@ -10,6 +10,5 @@
|
||||||
home-manager.users.steveej = import ../../../home-manager/configuration/graphical-fullblown.nix {
|
home-manager.users.steveej = import ../../../home-manager/configuration/graphical-fullblown.nix {
|
||||||
inherit pkgs;
|
inherit pkgs;
|
||||||
};
|
};
|
||||||
services.teamviewer.enable = true;
|
|
||||||
system.stateVersion = "20.09";
|
system.stateVersion = "20.09";
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
../../profiles/common/configuration.nix
|
../../profiles/common/configuration.nix
|
||||||
../../profiles/graphical/configuration.nix
|
../../profiles/graphical/configuration.nix
|
||||||
../../modules/opinionatedDisk.nix
|
../../modules/opinionatedDisk.nix
|
||||||
|
../../cachix.nix
|
||||||
|
|
||||||
./system.nix
|
./system.nix
|
||||||
./hw.nix
|
./hw.nix
|
||||||
|
|
|
@ -5,18 +5,25 @@
|
||||||
nodeFlake = repoFlake.inputs.get-flake ./.;
|
nodeFlake = repoFlake.inputs.get-flake ./.;
|
||||||
in {
|
in {
|
||||||
meta.nodeSpecialArgs.${nodeName} = {
|
meta.nodeSpecialArgs.${nodeName} = {
|
||||||
inherit nodeName nodeFlake;
|
inherit repoFlake nodeName nodeFlake;
|
||||||
packages' = repoFlake.packages.${system};
|
packages' = repoFlake.packages.${system};
|
||||||
};
|
};
|
||||||
|
|
||||||
meta.nodeNixpkgs.${nodeName} = import nodeFlake.inputs.nixpkgs.outPath {
|
meta.nodeNixpkgs.${nodeName} = import nodeFlake.inputs.nixpkgs.outPath {
|
||||||
inherit system;
|
inherit system;
|
||||||
|
overlays = [
|
||||||
|
(final: prev: {
|
||||||
|
# FIXME: why are these not effective in for the configuration.nix below?
|
||||||
|
xdg-desktop-portal-wlr' = repoFlake.inputs.nixpkgs-wayland.packages.${system}.xdg-desktop-portal-wlr;
|
||||||
|
xdg-desktop-portal-wlr-gtk' = repoFlake.inputs.nixpkgs-wayland.packages.${system}.xdg-desktop-portal-wlr-gtk;
|
||||||
|
})
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
${nodeName} = {
|
${nodeName} = {
|
||||||
deployment.targetHost = nodeName;
|
deployment.targetHost = nodeName;
|
||||||
deployment.replaceUnknownProfiles = false;
|
deployment.replaceUnknownProfiles = false;
|
||||||
# deployment.allowLocalDeployment = true;
|
deployment.allowLocalDeployment = true;
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
(repoFlake + "/nix/os/devices/${nodeName}/configuration.nix")
|
(repoFlake + "/nix/os/devices/${nodeName}/configuration.nix")
|
||||||
|
|
25
nix/os/devices/steveej-t14/flake.lock
generated
25
nix/os/devices/steveej-t14/flake.lock
generated
|
@ -37,13 +37,29 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-master": {
|
"nixpkgs-2211": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1684756366,
|
"lastModified": 1684580438,
|
||||||
"narHash": "sha256-aua/NybNHOJdZ0whu2qRfFOFqgjVUZ65D4xg3i3nZS0=",
|
"narHash": "sha256-LUPswmDn6fXP3lEBJFA2Id8PkcYDgzUilevWackYVvQ=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "e8d32cbe6678eb66f8def22cce43422c4b64957f",
|
"rev": "7dc71aef32e8faf065cb171700792cf8a65c152d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-22.11",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs-master": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1684758073,
|
||||||
|
"narHash": "sha256-LFm53sqiZoWRMNPjIDhqJvXgCcdsmMw7rbSZFhLRuJw=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "f491fc656a0b48c40e0312d559380d4ad46c4447",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -73,6 +89,7 @@
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
|
"nixpkgs-2211": "nixpkgs-2211",
|
||||||
"nixpkgs-master": "nixpkgs-master",
|
"nixpkgs-master": "nixpkgs-master",
|
||||||
"nixpkgs-unstable": "nixpkgs-unstable"
|
"nixpkgs-unstable": "nixpkgs-unstable"
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
inputs.nixpkgs-2211.url = "github:nixos/nixpkgs/nixos-22.11";
|
||||||
inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
inputs.nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable-small";
|
inputs.nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable-small";
|
||||||
inputs.nixpkgs-master.url = "github:nixos/nixpkgs/master";
|
inputs.nixpkgs-master.url = "github:nixos/nixpkgs/master";
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{pkgs, lib, ...}: {
|
{pkgs, lib, repoFlake, nodeFlake, ...}: {
|
||||||
home-manager.users.steveej = _: {
|
home-manager.users.steveej = _: {
|
||||||
imports = [
|
imports = [
|
||||||
../../../home-manager/configuration/graphical-fullblown.nix
|
../../../home-manager/configuration/graphical-fullblown.nix
|
||||||
|
@ -11,89 +11,122 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
# TODO: delegate graphical session to home-manager config (mostly)
|
# TODO: fix the following errors with regreet
|
||||||
|
#
|
||||||
# FIXME: move this to home-manager entirely
|
# Failed to create /var/empty/.cache for shader cache (Operation not permitted)---disabling.
|
||||||
# programs.sway.enable = true;
|
# amdgpu: amdgpu_cs_ctx_create2 failed. (-13)
|
||||||
# programs.sway.package = null;
|
# Failed to create /var/empty/.cache for shader cache (Operation not permitted)---disabling.
|
||||||
|
# ERROR: Couldn't create log file '/var/log/regreet/log': Permission denied (os error 13)
|
||||||
services.xserver = {
|
# 2023-05-22T10:31:42.52900769+02:00 WARN regreet::tomlutils: Missing TOML file: /var/cache/regreet/cache.toml
|
||||||
enable = lib.mkForce false;
|
# 2023-05-22T10:31:42.52902325+02:00 WARN regreet::tomlutils: Missing TOML file: /etc/greetd/regreet.toml
|
||||||
|
#
|
||||||
desktopManager = {
|
# (regreet:505614): Gtk-WARNING **: 10:31:42.532: Theme parser warning: <data>:6:17-18: Empty declaration
|
||||||
gnome.enable = lib.mkForce false;
|
# Failed to create /var/empty/.cache for shader cache (Operation not permitted)---disabling.
|
||||||
xterm.enable = lib.mkForce false;
|
services.greetd =
|
||||||
|
let
|
||||||
# FIXME: gnome should be moved to user session
|
# exec "${pkgs.greetd.gtkgreet}/bin/gtkgreet -l; swaymsg exit"
|
||||||
# gnome.enable = true;
|
swayConfig = pkgs.writeText "greetd-sway-config" ''
|
||||||
# xterm.enable = true;
|
# `-l` activates layer-shell mode. Notice that `swaymsg exit` will run after gtkgreet.
|
||||||
};
|
exec "dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK; ${pkgs.greetd.regreet}/bin/regreet; swaymsg exit"
|
||||||
|
bindsym Mod4+shift+e exec swaynag \
|
||||||
displayManager = {
|
-t warning \
|
||||||
# gdm.enable = lib.mkForce false;
|
-m 'What do you want to do?' \
|
||||||
|
-b 'Poweroff' 'systemctl poweroff' \
|
||||||
# FIXME: does the home-manager session have an explicit name?
|
-b 'Reboot' 'systemctl reboot'
|
||||||
# defaultSession = "xterm";
|
'';
|
||||||
|
in {
|
||||||
# autoLogin = {
|
enable = false;
|
||||||
# enable = true;
|
settings = {
|
||||||
# user = "steveej";
|
vt = 1;
|
||||||
# };
|
default_session = {
|
||||||
|
command = "${pkgs.sway}/bin/sway --config ${swayConfig}";
|
||||||
# session = [
|
};
|
||||||
# {
|
|
||||||
# manage = "desktop";
|
|
||||||
# name = "xsession";
|
|
||||||
# start = "";
|
|
||||||
# }
|
|
||||||
# ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
services.greetd =
|
|
||||||
let
|
|
||||||
# exec "${pkgs.greetd.gtkgreet}/bin/gtkgreet -l; swaymsg exit"
|
|
||||||
swayConfig = pkgs.writeText "greetd-sway-config" ''
|
|
||||||
# `-l` activates layer-shell mode. Notice that `swaymsg exit` will run after gtkgreet.
|
|
||||||
exec "dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK; ${pkgs.greetd.regreet}/bin/regreet; swaymsg exit"
|
|
||||||
bindsym Mod4+shift+e exec swaynag \
|
|
||||||
-t warning \
|
|
||||||
-m 'What do you want to do?' \
|
|
||||||
-b 'Poweroff' 'systemctl poweroff' \
|
|
||||||
-b 'Reboot' 'systemctl reboot'
|
|
||||||
'';
|
|
||||||
in {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
vt = 1;
|
|
||||||
default_session = {
|
|
||||||
command = "${pkgs.sway}/bin/sway --config ${swayConfig}";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
environment.etc."greetd/environments".text = ''
|
environment.etc."greetd/environments".text = ''
|
||||||
sway
|
sway
|
||||||
jay
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
# fonts = let
|
||||||
|
# prefs.font = rec {
|
||||||
|
# size = 13;
|
||||||
|
# default = sans;
|
||||||
|
|
||||||
|
# sans = { family = "Noto Sans"; package = pkgs.noto-fonts; };
|
||||||
|
# serif = { family = "Noto Serif"; package = pkgs.noto-fonts; };
|
||||||
|
# # monospace = { family = "Iosevka Fixed"; package = pkgs.iosevka-bin; };
|
||||||
|
# monospace = { family = "Iosevka Comfy Fixed"; package = pkgs.iosevka-comfy.comfy-fixed; };
|
||||||
|
# # monospace = { family = "Go Mono"; package = pkgs.go-font; };
|
||||||
|
# # monospace = { family = "Jetbrains Mono"; package = pkgs.jetbrains-mono; };
|
||||||
|
# fallback = { family = "Font Awesome 5 Free"; package = pkgs.font-awesome; };
|
||||||
|
# emoji = { family = "Noto Color Emoji"; package = pkgs.noto-fonts-emoji; };
|
||||||
|
#
|
||||||
|
# allPackages = (map (p: p.package)
|
||||||
|
# [
|
||||||
|
# default
|
||||||
|
# sans
|
||||||
|
# serif
|
||||||
|
# monospace
|
||||||
|
# fallback
|
||||||
|
# emoji
|
||||||
|
# ]) ++
|
||||||
|
# (with pkgs; [
|
||||||
|
# liberation_ttf # free corefonts-metric-compatible replacement
|
||||||
|
# ttf_bitstream_vera
|
||||||
|
# gelasio # metric-compatible with Georgia
|
||||||
|
# powerline-symbols
|
||||||
|
# ]);
|
||||||
|
# };
|
||||||
|
# in {
|
||||||
|
# # fonts = prefs.font.allPackages;
|
||||||
|
|
||||||
|
# # fontconfig = {
|
||||||
|
# # enable = true;
|
||||||
|
# # defaultFonts = {
|
||||||
|
# # serif = [ prefs.font.serif.family ];
|
||||||
|
# # sansSerif = [ prefs.font.sans.family ];
|
||||||
|
# # monospace = [ prefs.font.monospace.family ];
|
||||||
|
# # emoji = [ prefs.font.emoji.family ];
|
||||||
|
# # };
|
||||||
|
# # };
|
||||||
|
# };
|
||||||
|
|
||||||
|
security.pam.services.getty.enableGnomeKeyring = true;
|
||||||
|
services.gnome.gnome-keyring.enable = true;
|
||||||
|
|
||||||
|
# rtkit is optional but recommended
|
||||||
|
security.rtkit.enable = true;
|
||||||
|
services.pipewire = {
|
||||||
|
enable = true;
|
||||||
|
alsa.enable = true;
|
||||||
|
alsa.support32Bit = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
# If you want to use JACK applications, uncomment this
|
||||||
|
#jack.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
# required by swaywm
|
# required by swaywm
|
||||||
security.polkit.enable = true;
|
security.polkit.enable = true;
|
||||||
|
|
||||||
security.pam.services.swaylock = { };
|
security.pam.services.swaylock = { };
|
||||||
|
|
||||||
services.teamviewer.enable = false;
|
# test these on https://mozilla.github.io/webrtc-landing/gum_test.html
|
||||||
system.stateVersion = "20.09";
|
xdg.portal = {
|
||||||
|
enable = true;
|
||||||
|
# FIXME: `true` breaks xdg-open from alacritty:
|
||||||
|
# $ xdg-open "https://github.com/"
|
||||||
|
# Error: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.OpenURI” on object at path /org/freedesktop/portal/desktop
|
||||||
|
xdgOpenUsePortal = false;
|
||||||
|
extraPortals = [
|
||||||
|
pkgs.xdg-desktop-portal-wlr
|
||||||
|
pkgs.xdg-desktop-portal-gtk
|
||||||
|
|
||||||
|
# repoFlake.inputs.nixpkgs-wayland.packages.${pkgs.system}.xdg-desktop-portal-wlr
|
||||||
|
# (pkgs.xdg-desktop-portal-gtk.override (_: {
|
||||||
|
# buildPortalsInGnome = false;
|
||||||
|
# }))
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
# TODO: move this into home-manager
|
system.stateVersion = "23.05";
|
||||||
environment.systemPackages = with pkgs.gnomeExtensions; [
|
|
||||||
pop-shell
|
|
||||||
vitals
|
|
||||||
soft-brightness
|
|
||||||
|
|
||||||
# TODO: currently not compatible
|
|
||||||
# window-switcher-current-workspace-first
|
|
||||||
# mmod-panel
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,19 +7,19 @@
|
||||||
}: let
|
}: let
|
||||||
passwords = import ../../../variables/passwords.crypt.nix;
|
passwords = import ../../../variables/passwords.crypt.nix;
|
||||||
in {
|
in {
|
||||||
nix = {
|
nix.settings = {
|
||||||
binaryCaches = [
|
substituters = [
|
||||||
"https://holochain-ci.cachix.org"
|
"https://holochain-ci.cachix.org"
|
||||||
# "https://cache.holo.host/"
|
# "https://cache.holo.host/"
|
||||||
];
|
];
|
||||||
binaryCachePublicKeys = [
|
trusted-public-keys = [
|
||||||
"holochain-ci.cachix.org-1:5IUSkZc0aoRS53rfkvH9Kid40NpyjwCMCzwRTXy+QN8="
|
"holochain-ci.cachix.org-1:5IUSkZc0aoRS53rfkvH9Kid40NpyjwCMCzwRTXy+QN8="
|
||||||
# "cache.holo.host-1:lNXIXtJgS9Iuw4Cu6X0HINLu9sTfcjEntnrgwMQIMcE="
|
# "cache.holo.host-1:lNXIXtJgS9Iuw4Cu6X0HINLu9sTfcjEntnrgwMQIMcE="
|
||||||
# "cache.holo.host-2:ZJCkX3AUYZ8soxTLfTb60g+F3MkWD7hkH9y8CgqwhDQ="
|
# "cache.holo.host-2:ZJCkX3AUYZ8soxTLfTb60g+F3MkWD7hkH9y8CgqwhDQ="
|
||||||
];
|
];
|
||||||
|
|
||||||
settings.extra-experimental-features = ["impure-derivations"];
|
extra-experimental-features = ["impure-derivations"];
|
||||||
settings.system-features = ["recursive-nix"];
|
system-features = ["recursive-nix"];
|
||||||
};
|
};
|
||||||
|
|
||||||
networking.bridges."virbr1".interfaces = [];
|
networking.bridges."virbr1".interfaces = [];
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
flake,
|
|
||||||
pkgs,
|
pkgs,
|
||||||
# these come in via nodeSpecialArgs and are expected to be defined for every node
|
# these come in via nodeSpecialArgs and are expected to be defined for every node
|
||||||
|
repoFlake,
|
||||||
nodeFlake,
|
nodeFlake,
|
||||||
packages',
|
packages',
|
||||||
...
|
...
|
||||||
|
@ -19,6 +19,7 @@
|
||||||
# hence, opt for passing the arguments selectively instead
|
# hence, opt for passing the arguments selectively instead
|
||||||
home-manager.extraSpecialArgs = {
|
home-manager.extraSpecialArgs = {
|
||||||
inherit
|
inherit
|
||||||
|
repoFlake
|
||||||
packages'
|
packages'
|
||||||
nodeFlake
|
nodeFlake
|
||||||
;
|
;
|
||||||
|
|
|
@ -0,0 +1,106 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
services.xserver = {
|
||||||
|
enable = true;
|
||||||
|
libinput.enable = true;
|
||||||
|
libinput.touchpad.naturalScrolling = true;
|
||||||
|
|
||||||
|
videoDrivers = [
|
||||||
|
"qxl"
|
||||||
|
"modesetting"
|
||||||
|
"ati"
|
||||||
|
"cirrus"
|
||||||
|
"intel"
|
||||||
|
"vesa"
|
||||||
|
"vmware"
|
||||||
|
"modesetting"
|
||||||
|
];
|
||||||
|
layout = "us";
|
||||||
|
xkbVariant = "altgr-intl";
|
||||||
|
xkbOptions = "nodeadkeys";
|
||||||
|
|
||||||
|
desktopManager = {
|
||||||
|
# FIXME: gnome should be moved to user session
|
||||||
|
gnome.enable = true;
|
||||||
|
|
||||||
|
xterm.enable = true;
|
||||||
|
plasma5.enable = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
displayManager = {
|
||||||
|
gdm.enable = true;
|
||||||
|
gdm.wayland = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
# gnome, most of it is disabled and ideally it could live entirely in the user's home config
|
||||||
|
programs.gpaste.enable = false;
|
||||||
|
programs.gnome-terminal.enable = false;
|
||||||
|
# programs.gnome-documents.enable = false;
|
||||||
|
programs.gnome-disks.enable = false;
|
||||||
|
|
||||||
|
# TODO: fully delegate graphical session to home-manager config
|
||||||
|
services.gnome = {
|
||||||
|
gnome-online-miners.enable = lib.mkForce false;
|
||||||
|
games.enable = false;
|
||||||
|
gnome-remote-desktop.enable = false;
|
||||||
|
gnome-user-share.enable = false;
|
||||||
|
rygel.enable = false;
|
||||||
|
sushi.enable = false;
|
||||||
|
tracker.enable = false;
|
||||||
|
tracker-miners.enable = false;
|
||||||
|
|
||||||
|
gnome-browser-connector.enable = false;
|
||||||
|
gnome-initial-setup.enable = false;
|
||||||
|
|
||||||
|
# FIXME: gnome should be moved to home config
|
||||||
|
gnome-settings-daemon.enable = true;
|
||||||
|
core-os-services.enable = true;
|
||||||
|
at-spi2-core.enable = true;
|
||||||
|
evolution-data-server.enable = true;
|
||||||
|
gnome-online-accounts.enable = true;
|
||||||
|
gnome-keyring.enable = lib.mkForce false;
|
||||||
|
};
|
||||||
|
|
||||||
|
# FIXME: gnome should be moved to user session
|
||||||
|
services.gvfs.enable = true;
|
||||||
|
programs.seahorse.enable = true;
|
||||||
|
programs.dconf.enable = true;
|
||||||
|
|
||||||
|
environment.gnome.excludePackages =
|
||||||
|
(with pkgs; [
|
||||||
|
orca
|
||||||
|
gnome-photos
|
||||||
|
gnome-tour
|
||||||
|
])
|
||||||
|
++ (with pkgs.gnome; [
|
||||||
|
cheese # webcam tool
|
||||||
|
gnome-music
|
||||||
|
gnome-terminal
|
||||||
|
gedit # text editor
|
||||||
|
epiphany # web browser
|
||||||
|
geary # email reader
|
||||||
|
evince # document viewer
|
||||||
|
gnome-characters
|
||||||
|
totem # video player
|
||||||
|
tali # poker game
|
||||||
|
iagno # go game
|
||||||
|
hitori # sudoku game
|
||||||
|
atomix # puzzle game
|
||||||
|
]);
|
||||||
|
|
||||||
|
hardware.pulseaudio = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.pulseaudioFull;
|
||||||
|
support32Bit = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.dbus.packages = with pkgs; [dconf];
|
||||||
|
|
||||||
|
# More Services
|
||||||
|
environment.systemPackages = [pkgs.gnome.adwaita-icon-theme pkgs.gnomeExtensions.appindicator];
|
||||||
|
}
|
|
@ -18,111 +18,16 @@
|
||||||
|
|
||||||
services.resolved.enable = true;
|
services.resolved.enable = true;
|
||||||
|
|
||||||
|
|
||||||
# hardware related services
|
# hardware related services
|
||||||
services.illum.enable = true;
|
services.illum.enable = true;
|
||||||
services.pcscd.enable = false;
|
services.pcscd.enable = false;
|
||||||
hardware = {
|
hardware.opengl.enable = true;
|
||||||
bluetooth.enable = true;
|
hardware.bluetooth.enable = true;
|
||||||
pulseaudio = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.pulseaudioFull;
|
|
||||||
support32Bit = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
# required for running blueman-applet in user sessions
|
# required for running blueman-applet in user sessions
|
||||||
services.dbus.packages = with pkgs; [blueman dconf];
|
services.dbus.packages = with pkgs; [blueman];
|
||||||
services.blueman.enable = true;
|
services.blueman.enable = true;
|
||||||
|
|
||||||
services.xserver = {
|
|
||||||
enable = true;
|
|
||||||
libinput.enable = true;
|
|
||||||
libinput.touchpad.naturalScrolling = true;
|
|
||||||
|
|
||||||
videoDrivers = [
|
|
||||||
"qxl"
|
|
||||||
"modesetting"
|
|
||||||
"ati"
|
|
||||||
"cirrus"
|
|
||||||
"intel"
|
|
||||||
"vesa"
|
|
||||||
"vmware"
|
|
||||||
"modesetting"
|
|
||||||
];
|
|
||||||
layout = "us";
|
|
||||||
xkbVariant = "altgr-intl";
|
|
||||||
xkbOptions = "nodeadkeys";
|
|
||||||
|
|
||||||
desktopManager = {
|
|
||||||
# FIXME: gnome should be moved to user session
|
|
||||||
gnome.enable = true;
|
|
||||||
|
|
||||||
xterm.enable = true;
|
|
||||||
plasma5.enable = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
displayManager = {
|
|
||||||
gdm.enable = true;
|
|
||||||
gdm.wayland = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# gnome, most of it is disabled and ideally it could live entirely in the user's home config
|
|
||||||
programs.gpaste.enable = false;
|
|
||||||
programs.gnome-terminal.enable = false;
|
|
||||||
# programs.gnome-documents.enable = false;
|
|
||||||
programs.gnome-disks.enable = false;
|
|
||||||
|
|
||||||
services.gnome = {
|
|
||||||
gnome-online-miners.enable = lib.mkForce false;
|
|
||||||
games.enable = false;
|
|
||||||
gnome-remote-desktop.enable = false;
|
|
||||||
gnome-user-share.enable = false;
|
|
||||||
rygel.enable = false;
|
|
||||||
sushi.enable = false;
|
|
||||||
tracker.enable = false;
|
|
||||||
tracker-miners.enable = false;
|
|
||||||
|
|
||||||
gnome-browser-connector.enable = false;
|
|
||||||
gnome-initial-setup.enable = false;
|
|
||||||
|
|
||||||
# FIXME: gnome should be moved to home config
|
|
||||||
gnome-settings-daemon.enable = true;
|
|
||||||
core-os-services.enable = true;
|
|
||||||
at-spi2-core.enable = true;
|
|
||||||
evolution-data-server.enable = true;
|
|
||||||
gnome-online-accounts.enable = true;
|
|
||||||
gnome-keyring.enable = lib.mkForce false;
|
|
||||||
};
|
|
||||||
|
|
||||||
# FIXME: gnome should be moved to user session
|
|
||||||
services.gvfs.enable = true;
|
|
||||||
programs.seahorse.enable = true;
|
|
||||||
programs.dconf.enable = true;
|
|
||||||
|
|
||||||
environment.gnome.excludePackages =
|
|
||||||
(with pkgs; [
|
|
||||||
orca
|
|
||||||
gnome-photos
|
|
||||||
gnome-tour
|
|
||||||
])
|
|
||||||
++ (with pkgs.gnome; [
|
|
||||||
cheese # webcam tool
|
|
||||||
gnome-music
|
|
||||||
gnome-terminal
|
|
||||||
gedit # text editor
|
|
||||||
epiphany # web browser
|
|
||||||
geary # email reader
|
|
||||||
evince # document viewer
|
|
||||||
gnome-characters
|
|
||||||
totem # video player
|
|
||||||
tali # poker game
|
|
||||||
iagno # go game
|
|
||||||
hitori # sudoku game
|
|
||||||
atomix # puzzle game
|
|
||||||
]);
|
|
||||||
|
|
||||||
# More Services
|
|
||||||
environment.systemPackages = [pkgs.gnome.adwaita-icon-theme pkgs.gnomeExtensions.appindicator];
|
|
||||||
services.udev.packages = [pkgs.libu2f-host pkgs.yubikey-personalization pkgs.android-udev-rules];
|
services.udev.packages = [pkgs.libu2f-host pkgs.yubikey-personalization pkgs.android-udev-rules];
|
||||||
services.udev.extraRules = ''
|
services.udev.extraRules = ''
|
||||||
# OnePlusOne
|
# OnePlusOne
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue