Nix configurations for my personal machines (Linux & macOS)
at main 3.2 kB view raw
1{ 2 inputs = { 3 nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; 4 nix-vscode-extensions.url = "github:nix-community/nix-vscode-extensions"; 5 # nur.url = "github:nix-community/NUR"; 6 7 nix-darwin = { 8 url = "github:nix-darwin/nix-darwin"; 9 inputs.nixpkgs.follows = "nixpkgs"; 10 }; 11 12 home-manager = { 13 url = "github:nix-community/home-manager"; 14 inputs.nixpkgs.follows = "nixpkgs"; 15 }; 16 17 nix-index-database = { 18 url = "github:nix-community/nix-index-database"; 19 inputs.nixpkgs.follows = "nixpkgs"; 20 }; 21 22 iosevka-solai = { 23 url = "github:ovyerus/iosevka-solai"; 24 inputs.nixpkgs.follows = "nixpkgs"; 25 }; 26 27 niri-flake = { 28 url = "github:sodiboo/niri-flake"; 29 inputs.nixpkgs.follows = "nixpkgs"; 30 }; 31 32 lix-module = { 33 url = "https://git.lix.systems/lix-project/nixos-module/archive/2.91.1-2.tar.gz"; 34 inputs.nixpkgs.follows = "nixpkgs"; 35 }; 36 37 denix = { 38 url = "github:yunfachi/denix"; 39 inputs.nixpkgs.follows = "nixpkgs"; 40 inputs.nix-darwin.follows = "nix-darwin"; 41 inputs.home-manager.follows = "home-manager"; 42 }; 43 44 zen-browser = { 45 url = "github:youwen5/zen-browser-flake"; 46 inputs.nixpkgs.follows = "nixpkgs"; 47 }; 48 49 # ags = { 50 # url = "github:Aylur/ags"; 51 # inputs.nixpkgs.follows = "nixpkgs"; 52 # }; 53 }; 54 55 outputs = { 56 # ags, 57 denix, 58 home-manager, 59 lix-module, 60 niri-flake, 61 nix-darwin, 62 nix-index-database, 63 nixpkgs, 64 self, 65 ... 66 } @ inputs: let 67 system = "x86_64-linux"; 68 pkgs = nixpkgs.legacyPackages.${system}; 69 # agsPkgs = ags.packages.${system}; 70 mkConfigurations = moduleSystem: 71 denix.lib.configurations (let 72 homeManagerUser = "ovy"; 73 in { 74 inherit moduleSystem homeManagerUser; 75 76 paths = [./hosts ./modules]; #./rices]; 77 specialArgs = {inherit inputs moduleSystem homeManagerUser;}; 78 }); 79 in { 80 packages.${system} = { 81 iconifydl = pkgs.callPackage ./pkgs/iconifydl.nix {}; 82 83 # default = ags.lib.bundle { 84 # inherit pkgs; 85 # src = ./files/astal; 86 # name = "ovy-shell"; 87 # entry = "app.ts"; 88 # }; 89 }; 90 91 # devShells.x86_64-linux.default = pkgs.mkShell { 92 # buildInputs = [agsPkgs.agsFull agsPkgs.io agsPkgs.apps agsPkgs.tray self.packages.${system}.iconifydl]; 93 # }; 94 95 nixosConfigurations = mkConfigurations "nixos"; 96 darwinConfigurations = mkConfigurations "darwin"; 97 98 # nixosModules.serverHomeManager = {...}: { 99 # imports = [home-manager.nixosModules.home-manager]; 100 101 # home-manager = { 102 # useGlobalPkgs = true; 103 # useUserPackages = true; 104 # backupFileExtension = "backup"; 105 # users.ovy = import ./home/server.nix; 106 # extraSpecialArgs = {inherit inputs;}; 107 # }; 108 # }; 109 110 formatter = { 111 aarch64-linux = nixpkgs.legacyPackages.aarch64-linux.alejandra; 112 aarch64-darwin = nixpkgs.legacyPackages.aarch64-darwin.alejandra; 113 x86_64-darwin = nixpkgs.legacyPackages.x86_64-darwin.alejandra; 114 x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.alejandra; 115 }; 116 }; 117}