NixOS configuration 馃獎
at refactor/full 110 lines 2.7 kB view raw
1{ 2 description = "Xaiya's Configuration"; 3 4 outputs = 5 inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } { imports = [ ./modules/flake ]; }; 6 7 inputs = { 8 9 # main-repository 10 # Also important note: 11 # https://deer.social/profile/did:plc:mojgntlezho4qt7uvcfkdndg/post/3loogwsoqok2w 12 nixpkgs.url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz"; 13 14 # Forked and better version of nix :> 15 lix = { 16 url = "https://git.lix.systems/lix-project/lix/archive/main.tar.gz"; 17 inputs.nixpkgs.follows = "nixpkgs"; 18 }; 19 20 # declarative theme manager; The one I use the most currently !! 21 catppuccin = { 22 type = "github"; 23 owner = "catppuccin"; 24 repo = "nix"; 25 }; 26 27 # ATProtocol git platform 28 tangled = { 29 url = "git+https://tangled.org/@tangled.org/core"; 30 inputs.nixpkgs.follows = "nixpkgs"; 31 }; 32 33 # TODO: change once at hardware part of this configuration? 34 # uses an entire repository with lots of configuration for just one (framework) module 35 # could write it into an own module 36 nixos-hardware = { 37 type = "github"; 38 owner = "NixOS"; 39 repo = "nixos-hardware"; 40 ref = "master"; 41 }; 42 43 home-manager = { 44 type = "github"; 45 owner = "nix-community"; 46 repo = "home-manager"; 47 inputs.nixpkgs.follows = "nixpkgs"; 48 }; 49 50 # secret manager based on age encryption 51 # the original agenix is needed for agenix-rekey, so dont mind them two being there 52 agenix = { 53 type = "github"; 54 owner = "ryantm"; 55 repo = "agenix"; 56 inputs.nixpkgs.follows = "nixpkgs"; 57 }; 58 59 # secret manager based on age encryption 60 # this adds security key and system based encryption support !! 61 agenix-rekey = { 62 type = "github"; 63 owner = "oddlama"; 64 repo = "agenix-rekey"; 65 66 inputs.nixpkgs.follows = "nixpkgs"; 67 }; 68 69 # Flake management tool, keeping all together nicely 70 flake-parts = { 71 type = "github"; 72 owner = "hercules-ci"; 73 repo = "flake-parts"; 74 75 inputs.nixpkgs-lib.follows = "nixpkgs"; 76 }; 77 78 # easily manage our hosts devices 79 easy-hosts = { 80 type = "github"; 81 owner = "tgirlcloud"; 82 repo = "easy-hosts"; 83 }; 84 85 # Nix systems list 86 # TODO: needed? 87 systems = { 88 type = "github"; 89 owner = "nix-systems"; 90 repo = "default"; 91 }; 92 93 # TIDAL (music client) 94 # injection for features like plugins and themes 95 tidaLuna = { 96 type = "github"; 97 owner = "Inrixia"; 98 repo = "TidaLuna"; 99 }; 100 101 # TODO: other solution? 102 nixcord = { 103 type = "github"; 104 owner = "KaylorBen"; 105 repo = "nixcord"; 106 107 inputs.nixpkgs.follows = "nixpkgs"; 108 }; 109 }; 110}