92 lines
2.1 KiB
Nix
92 lines
2.1 KiB
Nix
{
|
|
description = "Emile's Nix Dotfiles";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05";
|
|
|
|
#home-manager = {
|
|
# url = "github:nix-community/home-manager";
|
|
# inputs.nixpkgs.follows = "nixpkgs";
|
|
#};
|
|
|
|
grub2-themes.url = "github:vinceliuice/grub2-themes";
|
|
|
|
# is this necessary? (aren't I enabling it in `configuration.nix` anyways?)
|
|
hyprland.url = "github:hyprwm/Hyprland";
|
|
|
|
ags.url = "github:Aylur/ags";
|
|
|
|
colmena.url = "github:zhaofengli/colmena/?rev=47b6414d800c8471e98ca072bc0835345741a56a";
|
|
};
|
|
|
|
outputs = {
|
|
self,
|
|
nixpkgs,
|
|
#home-manager,
|
|
hyprland,
|
|
grub2-themes,
|
|
colmena,
|
|
...
|
|
} @ inputs: let
|
|
system = "x86_64-linux";
|
|
|
|
pkgs = import nixpkgs {
|
|
inherit system;
|
|
config = {
|
|
allowUnfree = false; # sanity check
|
|
};
|
|
};
|
|
# TODO: come back to this its really cool
|
|
# this is just something I'm experimenting with
|
|
# PROJECT_ROOT = builtins.toString ./.;
|
|
in {
|
|
devShells."x86_64-linux".default = pkgs.mkShell {
|
|
shell = "${pkgs.bash}/bin/bash";
|
|
|
|
packages = with pkgs; [
|
|
# ./script/* dependencies
|
|
mkpasswd
|
|
];
|
|
};
|
|
|
|
nixosConfigurations = {
|
|
# i be on my puter fr
|
|
myputer = nixpkgs.lib.nixosSystem {
|
|
# nix passes these to every single module
|
|
specialArgs = {inherit inputs;};
|
|
|
|
modules = [
|
|
./hosts/myputer
|
|
grub2-themes.nixosModules.default
|
|
];
|
|
};
|
|
|
|
# my laptop 0w0
|
|
lolcathost = nixpkgs.lib.nixosSystem {
|
|
specialArgs = {inherit inputs;};
|
|
|
|
modules = [
|
|
./hosts/lolcathost
|
|
grub2-themes.nixosModules.default
|
|
];
|
|
};
|
|
};
|
|
|
|
# remote deployment to my servers!!
|
|
colmenaHive = colmena.lib.makeHive {
|
|
meta = {
|
|
nixpkgs = pkgs;
|
|
# set nixpkgs per server
|
|
nodeNixpkgs = {
|
|
hyrule = import nixpkgs {
|
|
system = "x86_64-linux";
|
|
config.allowUnfree = false;
|
|
};
|
|
};
|
|
};
|
|
|
|
# meine vps
|
|
hyrule = import ./hosts/hyrule;
|
|
};
|
|
};
|
|
}
|