diff options
| author | Devin Finlinson <devin.finlinson@pm.me> | 2023-09-29 21:10:20 -0600 |
|---|---|---|
| committer | Devin Finlinson <devin.finlinson@pm.me> | 2023-09-29 21:10:20 -0600 |
| commit | cc6c2ad12e8df38456d43293d2ad627df80d1c1b (patch) | |
| tree | 369faf5dc4de4d44cee9624d8db371e81a1418de /flake.nix | |
| parent | 8a5a019f21e0597dd24588c6364dd1bba075451c (diff) | |
| parent | 5265ac12ec68637b725562e5762d464d57864617 (diff) | |
changing tons of stuff it will definitely break
Diffstat (limited to 'flake.nix')
| -rw-r--r-- | flake.nix | 146 |
1 files changed, 143 insertions, 3 deletions
@@ -6,15 +6,128 @@ nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; home-manager = { - url = "github:nix-community/home-manager/release-23.05"; + url = "github:nix-community/home-manager/release-23.05"; + # The `follows` keyword in inputs is used for inheritance. + # Here, `inputs.nixpkgs` of home-manager isn't kept consistent with the `inputs.nixpkgs` of the current flake, + # to not avoid problems caused by different versions of nixpkgs dependencies. inputs.nixpkgs.follows = "nixpkgs-unstable"; }; - # hyprland.url = "github:hyprwm/Hyprland"; + # modern window compositor + hyprland.url = "github:hyprwm/Hyprland"; + + #community wayland nixpkgs + # nixpkgs-wayland.url = "github:nix-community/nixpkgs-wayland"; + # anyrun - a wayland launcher + # anyrun = { + # url = "github:Kirottu/anyrun"; + # inputs.nixpkgs.follows = "nixpkgs-unstable"; + # }; + + # # generate iso/qcow2/docker/... image from nixos configuration + # nixos-generators = { + # url = "github:nix-community/nixos-generators"; + # inputs.nixpkgs.follows = "nixpkgs"; + # }; + + #secrets management, lock with git commit at 20xx/x/xx + #......... + + ##################### Some non-flake repositories ######################################### + + # # AstroNvim is an aesthetic and feature-ruch neovim config. + # astronvim = { + # url = "github:AstroNvim/AstroVnim/v3.36.0"; + # flake = false; + # }; + + # # useful nushell scripts, such as auto_completion + # nushell-scripts = { + # url = "github:nushell/nu_scripts" + # flake = false; + # }; + + # ryan4yin wallpapers + wallpapers = { + url = "github:ryan4yin/wallpapers"; + flake = false; + }; + + # # nur-ryan4yin = { + # url = "github:ryan4yin/nur-packages"; + # # inputs.nixpkgs.follows "nixpkgs"; + # }; + + # # riscv64 SBCs + # nixos-licheepi4a.url = "github:ryan4yin/nixos-licheepi4a"; + # # nixos-jh7110.url = "github:ryan4yin/nixos-jh7110"; + + # aarch64 SBCs + # nixos-rk3588.url = "github:ryan4yin/nixos-rk3588"; + + ############# Personal repositories ######################################## + + # # my private secrets, it's a private repository, you need to replace it with your own. + # # use ssh protocol to authenticate via ssh-agent/ssh-key, and shallow clone to save time + # mysecrets = { + # url = ""; + # flake = false; + # }; + + ##################### Color Schemes ####################################### + + #color scheme -catppuccin + catppuccin-btop = { + url = "github:catppuccin/btop"; + flake = false; + }; + catppuccin-bat = { + url = "github:catppuccin/bat"; + flake = false; + }; + catppuccin-alacritty = { + url = "github:catppuccing/alacritty"; + flake = false; + }; + catppuccin-helix = { + url = "github:catppuccin/helix"; + flake = false; + }; + catppuccin-starship = { + url = "github:catppuccin/starship"; + flake = false; + }; + catppuccin-hyprland = { + url = "github:catppuccin/hyprland"; + flake = false; + }; + + + # # the nixConfig here only affects the flake inself, not the system configuration! + # nixConfig = { + # experimental-features = ["nix-command" "flakes"]; + + # substituters = [ + # #my own cache server + # "url-here" + # "https://cache.nixos.org" + # "https://hyprland.cachix.org" + # ]; + + # # nix community's cache server + # extra-substituters = [ + # "https://nix-community.cachix.org" + # "https://nixpkgs-wayland.cachix.org" + # ]; + # extra-trusted-public-keys = [ + # "keys here" + # ]; + # }; + }; # outputs = inputs@{ self, nixpkgs, nixpkgs-unstable, home-manager, hyprland, ... }: { - outputs = inputs@{ self, nixpkgs, nixpkgs-unstable, home-manager, ... }: { + outputs = inputs@{ self, nixpkgs, nixpkgs-unstable, home-manager, wallpapers, catppuccin-btop, catppuccin-bat, catppuccin-alacritty, catppuccin-starship, catppuccin-hyprland, ... }: { nixosConfigurations = { @@ -27,6 +140,7 @@ # Default users ./modules/user-profiles/defin.nix + ./modules/user-profiles/root.nix home-manager.nixosModules.home-manager { @@ -57,6 +171,32 @@ # nix.registry.nixpkgs.flake = nixpkgs; ]; }; + + khad = nixpkgs.lib.nixosSystem { + modules = [ + ./machines/khad/configuration.nix + + ./machines/khad/hardware-configuration.nix + + ./modules/user-profiles/defin.nix + + home-manager.nixosModules.home-manager { + home-manager.useGlobalPkgs = true; + home-manager.useUserPackages = true; + home-manager.users.defin = import ./home-manager/home.nix; + } + ./modules/hyprland.nix + + ./modules/bluetooth.nix + ./modules/environment.nix + ./modules/kde-connect.nix + ./modules/nix-common.nix + ./modules/services.nix + ./modules/steam.nix + ./modules/sway.nix + ./modules/system-packages.nix + ]; + }; }; }; } |
