commit eb57c5d529c8adf0bcd2c535c633eae799851716 Author: teesh3rt Date: Thu Jan 29 21:14:34 2026 +0200 init: dendritic is pretty cool actually diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..bcb238c --- /dev/null +++ b/flake.lock @@ -0,0 +1,383 @@ +{ + "nodes": { + "base16": { + "inputs": { + "fromYaml": "fromYaml" + }, + "locked": { + "lastModified": 1755819240, + "narHash": "sha256-qcMhnL7aGAuFuutH4rq9fvAhCpJWVHLcHVZLtPctPlo=", + "owner": "SenchoPens", + "repo": "base16.nix", + "rev": "75ed5e5e3fce37df22e49125181fa37899c3ccd6", + "type": "github" + }, + "original": { + "owner": "SenchoPens", + "repo": "base16.nix", + "type": "github" + } + }, + "base16-fish": { + "flake": false, + "locked": { + "lastModified": 1765809053, + "narHash": "sha256-XCUQLoLfBJ8saWms2HCIj4NEN+xNsWBlU1NrEPcQG4s=", + "owner": "tomyun", + "repo": "base16-fish", + "rev": "86cbea4dca62e08fb7fd83a70e96472f92574782", + "type": "github" + }, + "original": { + "owner": "tomyun", + "repo": "base16-fish", + "rev": "86cbea4dca62e08fb7fd83a70e96472f92574782", + "type": "github" + } + }, + "base16-helix": { + "flake": false, + "locked": { + "lastModified": 1760703920, + "narHash": "sha256-m82fGUYns4uHd+ZTdoLX2vlHikzwzdu2s2rYM2bNwzw=", + "owner": "tinted-theming", + "repo": "base16-helix", + "rev": "d646af9b7d14bff08824538164af99d0c521b185", + "type": "github" + }, + "original": { + "owner": "tinted-theming", + "repo": "base16-helix", + "type": "github" + } + }, + "base16-vim": { + "flake": false, + "locked": { + "lastModified": 1732806396, + "narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=", + "owner": "tinted-theming", + "repo": "base16-vim", + "rev": "577fe8125d74ff456cf942c733a85d769afe58b7", + "type": "github" + }, + "original": { + "owner": "tinted-theming", + "repo": "base16-vim", + "rev": "577fe8125d74ff456cf942c733a85d769afe58b7", + "type": "github" + } + }, + "firefox-gnome-theme": { + "flake": false, + "locked": { + "lastModified": 1764873433, + "narHash": "sha256-1XPewtGMi+9wN9Ispoluxunw/RwozuTRVuuQOmxzt+A=", + "owner": "rafaelmardojai", + "repo": "firefox-gnome-theme", + "rev": "f7ffd917ac0d253dbd6a3bf3da06888f57c69f92", + "type": "github" + }, + "original": { + "owner": "rafaelmardojai", + "repo": "firefox-gnome-theme", + "type": "github" + } + }, + "flake-parts": { + "inputs": { + "nixpkgs-lib": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1768135262, + "narHash": "sha256-PVvu7OqHBGWN16zSi6tEmPwwHQ4rLPU9Plvs8/1TUBY=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "80daad04eddbbf5a4d883996a73f3f542fa437ac", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_2": { + "inputs": { + "nixpkgs-lib": [ + "stylix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1767609335, + "narHash": "sha256-feveD98mQpptwrAEggBQKJTYbvwwglSbOv53uCfH9PY=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "250481aafeb741edfe23d29195671c19b36b6dca", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "fromYaml": { + "flake": false, + "locked": { + "lastModified": 1731966426, + "narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=", + "owner": "SenchoPens", + "repo": "fromYaml", + "rev": "106af9e2f715e2d828df706c386a685698f3223b", + "type": "github" + }, + "original": { + "owner": "SenchoPens", + "repo": "fromYaml", + "type": "github" + } + }, + "gnome-shell": { + "flake": false, + "locked": { + "host": "gitlab.gnome.org", + "lastModified": 1767737596, + "narHash": "sha256-eFujfIUQDgWnSJBablOuG+32hCai192yRdrNHTv0a+s=", + "owner": "GNOME", + "repo": "gnome-shell", + "rev": "ef02db02bf0ff342734d525b5767814770d85b49", + "type": "gitlab" + }, + "original": { + "host": "gitlab.gnome.org", + "owner": "GNOME", + "ref": "gnome-49", + "repo": "gnome-shell", + "type": "gitlab" + } + }, + "home-manager": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1769580047, + "narHash": "sha256-tNqCP/+2+peAXXQ2V8RwsBkenlfWMERb+Uy6xmevyhM=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "366d78c2856de6ab3411c15c1cb4fb4c2bf5c826", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "release-25.11", + "repo": "home-manager", + "type": "github" + } + }, + "import-tree": { + "locked": { + "lastModified": 1763762820, + "narHash": "sha256-ZvYKbFib3AEwiNMLsejb/CWs/OL/srFQ8AogkebEPF0=", + "owner": "vic", + "repo": "import-tree", + "rev": "3c23749d8013ec6daa1d7255057590e9ca726646", + "type": "github" + }, + "original": { + "owner": "vic", + "repo": "import-tree", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1769598131, + "narHash": "sha256-e7VO/kGLgRMbWtpBqdWl0uFg8Y2XWFMdz0uUJvlML8o=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "fa83fd837f3098e3e678e6cf017b2b36102c7211", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-25.11", + "repo": "nixpkgs", + "type": "github" + } + }, + "nur": { + "inputs": { + "flake-parts": [ + "stylix", + "flake-parts" + ], + "nixpkgs": [ + "stylix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1767886815, + "narHash": "sha256-pB2BBv6X9cVGydEV/9Y8+uGCvuYJAlsprs1v1QHjccA=", + "owner": "nix-community", + "repo": "NUR", + "rev": "4ff84374d77ff62e2e13a46c33bfeb73590f9fef", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "NUR", + "type": "github" + } + }, + "root": { + "inputs": { + "flake-parts": "flake-parts", + "home-manager": "home-manager", + "import-tree": "import-tree", + "nixpkgs": "nixpkgs", + "stylix": "stylix" + } + }, + "stylix": { + "inputs": { + "base16": "base16", + "base16-fish": "base16-fish", + "base16-helix": "base16-helix", + "base16-vim": "base16-vim", + "firefox-gnome-theme": "firefox-gnome-theme", + "flake-parts": "flake-parts_2", + "gnome-shell": "gnome-shell", + "nixpkgs": [ + "nixpkgs" + ], + "nur": "nur", + "systems": "systems", + "tinted-foot": "tinted-foot", + "tinted-kitty": "tinted-kitty", + "tinted-schemes": "tinted-schemes", + "tinted-tmux": "tinted-tmux", + "tinted-zed": "tinted-zed" + }, + "locked": { + "lastModified": 1769472288, + "narHash": "sha256-RdnbroWsujYh1MaMhDpP5QM+bRIGG6smz987v1fli+U=", + "owner": "nix-community", + "repo": "stylix", + "rev": "c2c4a3ad52c096db1c8dde97d3d21451613f000c", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "release-25.11", + "repo": "stylix", + "type": "github" + } + }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "tinted-foot": { + "flake": false, + "locked": { + "lastModified": 1726913040, + "narHash": "sha256-+eDZPkw7efMNUf3/Pv0EmsidqdwNJ1TaOum6k7lngDQ=", + "owner": "tinted-theming", + "repo": "tinted-foot", + "rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4", + "type": "github" + }, + "original": { + "owner": "tinted-theming", + "repo": "tinted-foot", + "rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4", + "type": "github" + } + }, + "tinted-kitty": { + "flake": false, + "locked": { + "lastModified": 1735730497, + "narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=", + "owner": "tinted-theming", + "repo": "tinted-kitty", + "rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa", + "type": "github" + }, + "original": { + "owner": "tinted-theming", + "repo": "tinted-kitty", + "type": "github" + } + }, + "tinted-schemes": { + "flake": false, + "locked": { + "lastModified": 1767817087, + "narHash": "sha256-eGE8OYoK6HzhJt/7bOiNV2cx01IdIrHL7gXgjkHRdNo=", + "owner": "tinted-theming", + "repo": "schemes", + "rev": "bd99656235aab343e3d597bf196df9bc67429507", + "type": "github" + }, + "original": { + "owner": "tinted-theming", + "repo": "schemes", + "type": "github" + } + }, + "tinted-tmux": { + "flake": false, + "locked": { + "lastModified": 1767489635, + "narHash": "sha256-e6nnFnWXKBCJjCv4QG4bbcouJ6y3yeT70V9MofL32lU=", + "owner": "tinted-theming", + "repo": "tinted-tmux", + "rev": "3c32729ccae99be44fe8a125d20be06f8d7d8184", + "type": "github" + }, + "original": { + "owner": "tinted-theming", + "repo": "tinted-tmux", + "type": "github" + } + }, + "tinted-zed": { + "flake": false, + "locked": { + "lastModified": 1767488740, + "narHash": "sha256-wVOj0qyil8m+ouSsVZcNjl5ZR+1GdOOAooAatQXHbuU=", + "owner": "tinted-theming", + "repo": "base16-zed", + "rev": "11abb0b282ad3786a2aae088d3a01c60916f2e40", + "type": "github" + }, + "original": { + "owner": "tinted-theming", + "repo": "base16-zed", + "type": "github" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..aac9f42 --- /dev/null +++ b/flake.nix @@ -0,0 +1,22 @@ +{ + description = "@teesh3rt's configuration flake"; + + inputs = { + nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11"; + + flake-parts.url = "github:hercules-ci/flake-parts"; + flake-parts.inputs.nixpkgs-lib.follows = "nixpkgs"; + + import-tree.url = "github:vic/import-tree"; + + home-manager.url = "github:nix-community/home-manager/release-25.11"; + home-manager.inputs.nixpkgs.follows = "nixpkgs"; + + stylix.url = "github:nix-community/stylix/release-25.11"; + stylix.inputs.nixpkgs.follows = "nixpkgs"; + }; + + outputs = inputs@{ flake-parts, ... }: + flake-parts.lib.mkFlake { inherit inputs; } + (inputs.import-tree ./modules); +} diff --git a/modules/base/boot.nix b/modules/base/boot.nix new file mode 100644 index 0000000..de6144f --- /dev/null +++ b/modules/base/boot.nix @@ -0,0 +1,8 @@ +{ ... }: + +{ + flake.modules.nixos.base = { + boot.loader.systemd-boot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; + }; +} diff --git a/modules/base/eza.nix b/modules/base/eza.nix new file mode 100644 index 0000000..38612c6 --- /dev/null +++ b/modules/base/eza.nix @@ -0,0 +1,14 @@ +{ ... }: + +{ + flake.modules.nixos.base = { pkgs, ... }: { + environment.systemPackages = [ pkgs.eza ]; + environment.shellAliases = { + "ls" = "${pkgs.eza}/bin/eza -lah --sort=type --icons=auto"; + }; + }; + + flake.modules.homeManager.base = { + programs.eza.enable = true; + }; +} diff --git a/modules/base/fish.nix b/modules/base/fish.nix new file mode 100644 index 0000000..fff1f5a --- /dev/null +++ b/modules/base/fish.nix @@ -0,0 +1,16 @@ +{ config, ... }: + +{ + flake.modules.nixos.base = { pkgs, ... }: { + programs.fish.enable = true; + users.users.${config.flake.meta.user.name}.shell = pkgs.fish; + }; + + flake.modules.homeManager.base = { + programs.fish = { + enable = true; + }; + + programs.starship.enableFishIntegration = true; + }; +} diff --git a/modules/base/git.nix b/modules/base/git.nix new file mode 100644 index 0000000..9233f60 --- /dev/null +++ b/modules/base/git.nix @@ -0,0 +1,22 @@ +{ config, ... }: + +let + userName = config.flake.meta.git.name or config.flake.meta.user.name or ""; + userEmail = config.flake.meta.git.email or config.flake.meta.user.email or ""; +in +{ + flake.modules.nixos.base = { + programs.git.enable = true; + }; + + flake.modules.homeManager.base = { + programs.git = { + enable = true; + settings = { + user.name = userName; + user.email = userEmail; + init.defaultBranch = "main"; + }; + }; + }; +} diff --git a/modules/base/home-manager.nix b/modules/base/home-manager.nix new file mode 100644 index 0000000..5e93435 --- /dev/null +++ b/modules/base/home-manager.nix @@ -0,0 +1,13 @@ +{ inputs, config, ... }: + +{ + flake.modules.nixos.base = { + imports = [ inputs.home-manager.nixosModules.home-manager ]; + + home-manager.useGlobalPkgs = true; + home-manager.useUserPackages = true; + home-manager.users.${config.flake.meta.user.name} = { + home.stateVersion = config.flake.meta.stateVersion; + }; + }; +} diff --git a/modules/base/kernel.nix b/modules/base/kernel.nix new file mode 100644 index 0000000..b038e14 --- /dev/null +++ b/modules/base/kernel.nix @@ -0,0 +1,7 @@ +{ ... }: + +{ + flake.modules.nixos.base = { pkgs, ... }: { + boot.kernelPackages = pkgs.linuxPackages_latest; + }; +} diff --git a/modules/base/networking.nix b/modules/base/networking.nix new file mode 100644 index 0000000..d3df954 --- /dev/null +++ b/modules/base/networking.nix @@ -0,0 +1,7 @@ +{ ... }: + +{ + flake.modules.nixos.base = { + networking.networkmanager.enable = true; + }; +} diff --git a/modules/base/nix.nix b/modules/base/nix.nix new file mode 100644 index 0000000..92e6c6c --- /dev/null +++ b/modules/base/nix.nix @@ -0,0 +1,7 @@ +{ ... }: + +{ + flake.modules.nixos.base = { + nix.settings.experimental-features = [ "nix-command" "flakes" ]; + }; +} diff --git a/modules/base/region.nix b/modules/base/region.nix new file mode 100644 index 0000000..dfb5518 --- /dev/null +++ b/modules/base/region.nix @@ -0,0 +1,20 @@ +{ ... }: + +{ + flake.modules.nixos.base = { + time.timeZone = "Asia/Jerusalem"; + + i18n.defaultLocale = "en_US.UTF-8"; + i18n.extraLocaleSettings = { + LC_ADDRESS = "en_IL"; + LC_IDENTIFICATION = "en_IL"; + LC_MEASUREMENT = "en_IL"; + LC_MONETARY = "en_IL"; + LC_NAME = "en_IL"; + LC_NUMERIC = "en_IL"; + LC_PAPER = "en_IL"; + LC_TELEPHONE = "en_IL"; + LC_TIME = "en_IL"; + }; + }; +} diff --git a/modules/base/starship.nix b/modules/base/starship.nix new file mode 100644 index 0000000..06fa941 --- /dev/null +++ b/modules/base/starship.nix @@ -0,0 +1,11 @@ +{ ... }: + +{ + flake.modules.nixos.base = { + programs.starship.enable = true; + }; + + flake.modules.homeManager.base = { + programs.starship.enable = true; + }; +} diff --git a/modules/base/state-version.nix b/modules/base/state-version.nix new file mode 100644 index 0000000..c12da07 --- /dev/null +++ b/modules/base/state-version.nix @@ -0,0 +1,7 @@ +{ config, ... }: + +{ + flake.modules.nixos.base = { + system.stateVersion = "${config.flake.meta.stateVersion}"; + }; +} diff --git a/modules/base/stylix/impl.nix b/modules/base/stylix/impl.nix new file mode 100644 index 0000000..f75475e --- /dev/null +++ b/modules/base/stylix/impl.nix @@ -0,0 +1,14 @@ +{ inputs, lib, ... }: + +{ + flake.modules.nixos.base = { pkgs, ... }: { + imports = [ inputs.stylix.nixosModules.stylix ]; + + stylix = { + enable = true; + image = ./wallpaper.jpeg; + base16Scheme = "${pkgs.base16-schemes}/share/themes/blueish.yaml"; + polarity = "dark"; + }; + }; +} diff --git a/modules/base/stylix/wallpaper.jpeg b/modules/base/stylix/wallpaper.jpeg new file mode 100644 index 0000000..37fb52c Binary files /dev/null and b/modules/base/stylix/wallpaper.jpeg differ diff --git a/modules/base/unfree.nix b/modules/base/unfree.nix new file mode 100644 index 0000000..0869d02 --- /dev/null +++ b/modules/base/unfree.nix @@ -0,0 +1,7 @@ +{ ... }: + +{ + flake.modules.nixos.base = { + nixpkgs.config.allowUnfree = true; + }; +} diff --git a/modules/base/user.nix b/modules/base/user.nix new file mode 100644 index 0000000..6e12d2b --- /dev/null +++ b/modules/base/user.nix @@ -0,0 +1,12 @@ +{ config, ... }: + +{ + flake.modules.nixos.base = { + users.users.${config.flake.meta.user.name} = { + isNormalUser = true; + description = "${config.flake.meta.user.name}"; + extraGroups = [ "networkmanager" "wheel" ]; + packages = []; + }; + }; +} diff --git a/modules/desktop/apps/firefox.nix b/modules/desktop/apps/firefox.nix new file mode 100644 index 0000000..42d381f --- /dev/null +++ b/modules/desktop/apps/firefox.nix @@ -0,0 +1,11 @@ +{ ... }: + +{ + flake.modules.nixos.desktop = { + programs.firefox.enable = true; + }; + + flake.modules.homeManager.desktop = { + programs.firefox.enable = true; + }; +} diff --git a/modules/desktop/gnome.nix b/modules/desktop/gnome.nix new file mode 100644 index 0000000..0490727 --- /dev/null +++ b/modules/desktop/gnome.nix @@ -0,0 +1,10 @@ +{ ... }: + +{ + flake.modules.nixos.desktop = { + services.xserver.enable = true; + + services.xserver.displayManager.gdm.enable = true; + services.xserver.desktopManager.gnome.enable = true; + }; +} diff --git a/modules/desktop/layouts.nix b/modules/desktop/layouts.nix new file mode 100644 index 0000000..e88160c --- /dev/null +++ b/modules/desktop/layouts.nix @@ -0,0 +1,10 @@ +{ ... }: + +{ + flake.modules.nixos.desktop = { + services.xserver.xkb = { + layout = "us"; + variant = ""; + }; + }; +} diff --git a/modules/desktop/printing.nix b/modules/desktop/printing.nix new file mode 100644 index 0000000..2640e70 --- /dev/null +++ b/modules/desktop/printing.nix @@ -0,0 +1,7 @@ +{ ... }: + +{ + flake.modules.nixos.desktop = { + services.printing.enable = true; + }; +} diff --git a/modules/desktop/sound.nix b/modules/desktop/sound.nix new file mode 100644 index 0000000..dcbacf8 --- /dev/null +++ b/modules/desktop/sound.nix @@ -0,0 +1,14 @@ +{ ... }: + +{ + flake.modules.nixos.desktop = { + services.pulseaudio.enable = false; + security.rtkit.enable = true; + services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + }; + }; +} diff --git a/modules/flake-parts.nix b/modules/flake-parts.nix new file mode 100644 index 0000000..8945db5 --- /dev/null +++ b/modules/flake-parts.nix @@ -0,0 +1,12 @@ +{ inputs, ... }: + +{ + systems = [ + "x86_64-linux" + ]; + + imports = [ + inputs.flake-parts.flakeModules.modules + inputs.home-manager.flakeModules.home-manager + ]; +} diff --git a/modules/hosts/jank/taki/hardware.nix b/modules/hosts/jank/taki/hardware.nix new file mode 100644 index 0000000..9bbc4ff --- /dev/null +++ b/modules/hosts/jank/taki/hardware.nix @@ -0,0 +1,35 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ ... }: + +{ + flake.modules.nixos.taki = { config, lib, pkgs, modulesPath, ... }: { + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usbhid" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/b1830103-1e4a-4710-8aa6-f597a4ca46b3"; + fsType = "ext4"; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/F3B7-DE6D"; + fsType = "vfat"; + options = [ "fmask=0077" "dmask=0077" ]; + }; + + swapDevices = + [ { device = "/dev/disk/by-uuid/a74700a7-4c29-40cc-b0b4-50a171125dc1"; } + ]; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; + }; +} diff --git a/modules/hosts/jank/taki/home-manager.nix b/modules/hosts/jank/taki/home-manager.nix new file mode 100644 index 0000000..e861220 --- /dev/null +++ b/modules/hosts/jank/taki/home-manager.nix @@ -0,0 +1,7 @@ +{ config, ... }: + +{ + flake.modules.nixos.taki = { + home-manager.users.${config.flake.meta.user.name}.imports = [ config.flake.modules.homeManager.taki ]; + }; +} diff --git a/modules/hosts/jank/taki/hostname.nix b/modules/hosts/jank/taki/hostname.nix new file mode 100644 index 0000000..b2a668e --- /dev/null +++ b/modules/hosts/jank/taki/hostname.nix @@ -0,0 +1,7 @@ +{ ... }: + +{ + flake.modules.nixos.taki = { + networking.hostName = "taki"; + }; +} diff --git a/modules/hosts/jank/taki/taki.nix b/modules/hosts/jank/taki/taki.nix new file mode 100644 index 0000000..db21d98 --- /dev/null +++ b/modules/hosts/jank/taki/taki.nix @@ -0,0 +1,9 @@ +{ inputs, config, ... }: + +{ + flake.nixosConfigurations.taki = inputs.nixpkgs.lib.nixosSystem { + modules = with config.flake.modules; [ + nixos.taki + ]; + }; +} diff --git a/modules/hosts/taki.nix b/modules/hosts/taki.nix new file mode 100644 index 0000000..e6cece3 --- /dev/null +++ b/modules/hosts/taki.nix @@ -0,0 +1,13 @@ +{ config, ... }: + +{ + flake.modules.nixos.taki.imports = with config.flake.modules.nixos; [ + base + desktop + ]; + + flake.modules.homeManager.taki.imports = with config.flake.modules.homeManager; [ + base + desktop + ]; +} diff --git a/modules/meta.nix b/modules/meta.nix new file mode 100644 index 0000000..818637a --- /dev/null +++ b/modules/meta.nix @@ -0,0 +1,12 @@ +{ lib, ... }: + +let + inherit (lib) types; +in +{ + options.flake.meta = lib.mkOption { + type = types.attrsOf types.anything; + default = {}; + description = "the flake's meta values, can be anything!"; + }; +} diff --git a/modules/settings.nix b/modules/settings.nix new file mode 100644 index 0000000..7bec54b --- /dev/null +++ b/modules/settings.nix @@ -0,0 +1,12 @@ +{ ... }: + +{ + flake.meta.user = { + name = "teesh"; + email = "ilaylevy611@gmail.com"; + }; + + flake.meta.git.name = "teesh3rt"; + + flake.meta.stateVersion = "25.11"; +}