seeing if it's easier to fork tA's nixos laptop config rather than make one from scratch (more or less).
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

80 行
2.2KB

  1. {
  2. description = "Iwakura System Flake";
  3. inputs = {
  4. nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
  5. nixos-hardware.url = "github:NixOS/nixos-hardware";
  6. home-manager.url = "github:nix-community/home-manager/release-20.09";
  7. swatch = {
  8. url = "github:techieAgnostic/swatch";
  9. inputs.nixpkgs.follows = "nixpkgs";
  10. };
  11. vim = {
  12. url = "github:techieAgnostic/vim";
  13. inputs.nixpkgs.follows = "nixpkgs";
  14. };
  15. agenix = {
  16. url = "github:ryantm/agenix";
  17. inputs.nixpkgs.follows = "nixpkgs";
  18. };
  19. };
  20. outputs = { self, nixpkgs, home-manager, agenix, nixos-hardware, swatch, vim, ...}: {
  21. nixosConfigurations.iwakura = nixpkgs.lib.nixosSystem {
  22. system = "x86_64-linux";
  23. modules = [
  24. # enable secrets in the store
  25. agenix.nixosModules.age
  26. (import ./secrets { inherit agenix; })
  27. # enable flakes or we'll be sad
  28. (import ./modules/flakes)
  29. # enable sane garbage collection options
  30. (import ./modules/gc)
  31. # enabling window-manager
  32. (import ./modules/bspwm)
  33. # emacs + package override
  34. (import ./modules/emacs)
  35. # disk partitions and such (plus more that needs to be taken out)
  36. (import ./hardware/iwakura)
  37. # sane nameservers because aussie gov blocks everything
  38. (import ./modules/nameservers)
  39. # community settings for this laptop
  40. nixos-hardware.nixosModules.lenovo-thinkpad-t420
  41. nixos-hardware.nixosModules.common-pc-laptop-ssd
  42. # import home manager profiles and set to use same nixpkgs
  43. home-manager.nixosModules.home-manager {
  44. home-manager = {
  45. useGlobalPkgs = true;
  46. useUserPackages = true;
  47. users = {
  48. root = import ./users/root/home.nix;
  49. thorn = import ./users/thorn/home.nix;
  50. };
  51. };
  52. }
  53. # import nix config user profiles + misc
  54. ({ pkgs, ... }: {
  55. nixpkgs.overlays = [
  56. swatch.overlay
  57. vim.overlay
  58. (import ./overlays/picom.nix)
  59. ];
  60. nix.registry.nixpkgs.flake = nixpkgs;
  61. imports = [
  62. ./users/root
  63. ./users/thorn
  64. ];
  65. })
  66. ];
  67. };
  68. };
  69. }