this repo has no description
at main 3.2 kB view raw
1#+TITLE: Flake configuration 2#+AUTHOR: Tulkdan 3#+EMAIL: pedro8correa@gmail.com 4 5#+begin_src nix :tangle flake.nix :noweb yes 6 { 7 <<description>> 8 9 inputs = { 10 <<inputs>> 11 }; 12 13 outputs = { self, nixpkgs, home-manager, niri, vicinae, ... }@inputs: let 14 system = "x86_64-linux"; 15 hostname = "nixos"; 16 stateVersion = "25.05"; 17 pkgs = import nixpkgs { 18 inherit system; 19 }; 20 users = { 21 pedro = { 22 username = "pedro"; 23 }; 24 work = { 25 username = "pedro-correa"; 26 }; 27 }; 28 in { 29 <<outputs>> 30 }; 31 } 32#+end_src 33 34** Description 35#+NAME: description 36#+begin_src nix 37 description = "Tulk'dan's system config"; 38#+end_src 39 40** Inputs 41:PROPERTIES: 42:header-args: :noweb-ref inputs 43:END: 44 45*** Nixpkgs 46 47#+begin_src nix 48 nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; 49#+end_src 50 51*** Home Manager 52#+begin_src nix 53 home-manager = { 54 url = "github:nix-community/home-manager"; 55 inputs.nixpkgs.follows = "nixpkgs"; 56 }; 57#+end_src 58 59*** Niri 60#+begin_src nix 61 niri.url = "github:sodiboo/niri-flake"; 62#+end_src 63 64*** AGR 65#+begin_src nix 66 ags.url = "github:Aylur/ags"; 67#+end_src 68 69*** [[https://docs.vicinae.com/][Vicinae]] 70#+begin_src nix 71 vicinae.url = "github:vicinaehq/vicinae"; 72#+end_src 73 74** Outputs 75:PROPERTIES: 76:header-args: :noweb-ref outputs 77:END: 78 79*** Formatter 80#+begin_src nix 81 formatter.x86_64-linux = pkgs.alejandra; 82#+end_src 83 84*** NixOS System 85#+begin_src nix 86 nixosConfigurations = { 87 ${hostname} = nixpkgs.lib.nixosSystem { 88 inherit system; 89 90 modules = 91 [ 92 niri.nixosModules.niri 93 ({pkgs, ...}: { 94 nixpkgs.overlays = [niri.overlays.niri]; 95 programs.niri.package = pkgs.niri-unstable; 96 # programs.niri.package = pkgs.niri-stable; 97 # programs.niri.package = pkgs.niri-unstable.override {src = niri-working-tree;}; 98 environment.variables.NIXOS_OZONE_WL = "1"; 99 environment.systemPackages = with pkgs; [ 100 wl-clipboard 101 wayland-utils 102 libsecret 103 cage 104 ]; 105 }) 106 107 home-manager.nixosModules.home-manager 108 { 109 home-manager = { 110 useUserPackages = true; 111 extraSpecialArgs = inputs; 112 }; 113 } 114 ./hosts/desktop 115 ]; 116 }; 117 }; 118#+end_src 119 120*** Home Manager 121 122**** Personal 123#+begin_src nix 124 homeConfigurations = { 125 pedro = home-manager.lib.homeManagerConfiguration { 126 inherit pkgs; 127 extraSpecialArgs = { 128 inherit stateVersion; 129 inherit inputs; 130 username = users.pedro.username; 131 }; 132 modules = [ 133 vicinae.homeManagerModules.default 134 ./home 135 ./home/personal.nix 136 ]; 137 }; 138 }; 139#+end_src 140 141**** Work 142#+begin_src nix 143 homeConfigurations = { 144 work = home-manager.lib.homeManagerConfiguration { 145 inherit pkgs; 146 extraSpecialArgs = { 147 inherit stateVersion; 148 username = users.work.username; 149 }; 150 modules = [ 151 vicinae.homeManagerModules.default 152 ./home 153 ./home/work.nix 154 ]; 155 }; 156 }; 157#+end_src