{"id":14967964,"url":"https://github.com/wimpysworld/nix-config","last_synced_at":"2026-02-25T07:58:08.314Z","repository":{"id":153972820,"uuid":"613608807","full_name":"wimpysworld/nix-config","owner":"wimpysworld","description":"Wimpy's NixOS, nix-darwin  \u0026 Home Manager Configurations ❄️","archived":false,"fork":false,"pushed_at":"2026-01-30T18:16:31.000Z","size":16971,"stargazers_count":630,"open_issues_count":0,"forks_count":27,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-01-31T11:15:32.626Z","etag":null,"topics":["ci-cd","determinate","fish-shell","flakehub","hacktoberfest","home-manager","home-manager-config","macos","nix","nix-darwin","nix-dotfiles","nix-flake","nix-flake-checker","nixos","nixos-config","nixos-configuration","nixos-dotfiles","pantheon","sops-nix"],"latest_commit_sha":null,"homepage":"","language":"Nix","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wimpysworld.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null},"funding":{"github":"flexiondotorg","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"lfx_crowdfunding":null,"polar":null,"buy_me_a_coffee":null,"custom":null}},"created_at":"2023-03-13T22:59:03.000Z","updated_at":"2026-01-30T18:16:35.000Z","dependencies_parsed_at":null,"dependency_job_id":"ab05d4a3-c967-4420-a574-7b88af01ede0","html_url":"https://github.com/wimpysworld/nix-config","commit_stats":{"total_commits":2858,"total_committers":5,"mean_commits":571.6,"dds":0.04583624912526241,"last_synced_commit":"fa492d6378f16a2fe50d8e2af342ec7c7130879f"},"previous_names":[],"tags_count":107,"template":false,"template_full_name":null,"purl":"pkg:github/wimpysworld/nix-config","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wimpysworld%2Fnix-config","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wimpysworld%2Fnix-config/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wimpysworld%2Fnix-config/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wimpysworld%2Fnix-config/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wimpysworld","download_url":"https://codeload.github.com/wimpysworld/nix-config/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wimpysworld%2Fnix-config/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29175843,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T20:14:21.878Z","status":"ssl_error","status_checked_at":"2026-02-06T20:14:21.443Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ci-cd","determinate","fish-shell","flakehub","hacktoberfest","home-manager","home-manager-config","macos","nix","nix-darwin","nix-dotfiles","nix-flake","nix-flake-checker","nixos","nixos-config","nixos-configuration","nixos-dotfiles","pantheon","sops-nix"],"created_at":"2024-09-24T13:39:01.460Z","updated_at":"2026-02-06T21:04:11.221Z","avatar_url":"https://github.com/wimpysworld.png","language":"Nix","funding_links":["https://github.com/sponsors/flexiondotorg"],"categories":["nix"],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\u003cimg src=\".github/logo.png\" alt=\"Sith Happens\" width=\"256\" /\u003e\n\n# Wimpy's [NixOS], [nix-darwin] \u0026 [Home Manager] Configurations\n\n\u003cb\u003eMade with 💝 for \u003cimg src=\".github/nixos.png\" align=\"center\" width=\"18\" alt=\"NixOS\"/\u003e \u0026 \u003cimg src=\".github/apple.png\" align=\"center\" width=\"16\" alt=\"macOS\"/\u003e\u003c/b\u003e\n\u003cbr /\u003e\n\n\u003c/div\u003e\n\nThis repository contains a [Nix Flake](https://zero-to-nix.com/concepts/flakes) for configuring my computers and/or their home environment.\nIt is not intended to be a drop in configuration for your computer, but might serve as a reference or starting point for your own configuration.\n**If you are looking for a more generic NixOS configuration template, I highly recommend [nix-starter-configs](https://github.com/Misterio77/nix-starter-configs).** 👍️\nThese computers are managed by this Nix flake ❄️\n\n|  Hostname   |             Board             |              CPU               |  RAM  |         Primary GPU         |      Secondary GPU       |  Role  | OS  | State |\n| :---------: | :---------------------------: | :----------------------------: | :---: | :-------------------------: | :----------------------: | :----: | :-: | :---: |\n|  `malgus`   | [Framework Desktop Mainboard] |    [AMD Ryzen AI Max+ 395]     | 128GB |     [AMD Radeon 8060S]      |                          |   🖥️   | ❄️  |  🚧   |\n|  `zannah`   | [Framework Desktop Mainboard] |    [AMD Ryzen AI Max+ 395]     | 128GB |     [AMD Radeon 8060S]      |                          |   🖥️   | ❄️  |  🚧   |\n|  `sidious`  |      [ThinkPad P1 Gen 1]      |      [Intel Xeon E-2176M]      | 64GB  | [NVIDIA Quadro P2000 Max-Q] | Intel UHD Graphics P630  | 💻️🎭️ | ❄️  |  ✅   |\n| `palpatine` |              ⤴️               |               ⤴️               |  ⤴️   |             ⤴️              |            ⤴️            | 💻️🎭️ | 🪟  |  ✅   |\n|   `bane`    |        [Framework 16]         |      [AMD Ryzen 7 7940HS]      | 96GB  |       AMD Radeon 780M       |                          |  💻️   | ❄️  |  🚧   |\n|   `tanis`   |     [ThinkPad Z13 Gen 1]      |    [AMD Ryzen 5 PRO 6650U]     | 32GB  |       AMD Radeon 660M       |                          |  💻️   | ❄️  |  ✅   |\n|   `shaa`    |     [ThinkPad T14s Gen 1]     |    [AMD Ryzen 5 PRO 4650U]     | 16GB  |    AMD Radeon RX Vega 6     |                          |  💻️   | ❄️  |  ✅   |\n|  `atrius`   |       [ThinkPad T495s]        |      [AMD Ryzen 7 3700U]       | 16GB  |     AMD Radeon Vega 10      |                          |  💻️   | ❄️  |  🚧   |\n|   `krall`   |   [Macbook Pro (Mid 2015)]    |         Intel Core i7          | 16GB  |   Intel Iris Pro Graphics   |                          |  💻️   | 🍏  |  ✅   |\n| `steamdeck` |     [Steam Deck 64GB LCD]     |          Zen 2 4c/8t           | 16GB  |        8 RDNA 2 CUs         |                          |  🎮️   | 🐧  |  ✅   |\n|  `crawler`  |            [QEMU]             |               -                |   -   |           [VirGL]           |                          |   🐄   | ❄️  |  ✅   |\n|  `dagger`   |            [QEMU]             |               -                |   -   |           [VirGL]           |                          |   🐄   | ❄️  |  ✅   |\n| `defender`  |            [Lima]             |               -                |   -   |              -              |                          |   🐄   | 🐧  |  ✅   |\n|  `fighter`  |            [Lima]             |               -                |   -   |              -              |                          |   🐄   | 🐧  |  ✅   |\n|   `revan`   |       [Z390-DESIGNARE]        |     [Intel Core i9-9900K]      | 64GB  |   Intel UHD Graphics 630    |      [NVIDIA T1000]      |   ☁️   | ❄️  |  🚧   |\n|   `malak`   |        [B360 HD3P-LM]         |      [Intel Core i7-8700]      | 128GB |   Intel UHD Graphics 630    |            -             |   ☁️   | ❄️  |  🚧   |\n|   `maul`    |       [TRX40-DESIGNARE]       | [AMD Ryzen Threadripper 3970X] | 256GB |       NVIDIA RTX 3090       | NVIDIA RTX 2080Ti (22GB) |   ☁️   | ❄️  |  🚧   |\n\nWorkstation and server host names are Sith Lords and the virtual machines are named after TIE fighter series.\nDual boot systems have the NixOS install named a Sith Lord and the _\"other\"_ OS named after their public-facing persona.\n\n**Key**\n\n- 🎭️ : Dual boot\n- 🖥️ : Desktop\n- 💻️ : Laptop\n- 🎮️ : Games Machine\n- 🐄 : Virtual Machine\n- ☁️ : Server\n- 🧟 : Not in service\n\n**As featured on [Linux Matters](https://linuxmatters.sh) podcast!** 🎙️ I am a presenter on Linux Matters and this configuration was featured in [Episode 7 - Immutable Desktop Linux for Anyone](https://linuxmatters.sh/7/).\n\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://linuxmatters.sh\" target=\"_blank\"\u003e\u003cimg src=\"./.github/screenshots/linuxmatters.png\" alt=\"Linux Matters Podcast\"/\u003e\u003c/a\u003e\n  \u003cbr /\u003e\n  \u003cem\u003eLinux Matters Podcast\u003c/em\u003e\n\u003c/div\u003e\n\n## Structure\n\n- [.github]: GitHub CI/CD workflows Nix ❄️ supercharged ⚡️ by [**Determinate Systems**](https://determinate.systems)\n  - [Install Determinate Nix Action](https://github.com/marketplace/actions/install-determinate-nix)\n  - [FlakeHub Cache Action](https://github.com/marketplace/actions/flakehub-cache)\n  - [Flake Checker Action](https://github.com/marketplace/actions/nix-flake-checker)\n  - [Update Flake Lock Action](https://github.com/marketplace/actions/update-nix-flake-lock)\n- [darwin]: macOS configurations\n  - Includes full system configuration for a MacBook Air M2 15\" and MacBook Pro (Mid 2015)\n- [home-manager]: Home Manager configurations\n  - Sane defaults for shell and desktop\n- [nixos]: NixOS configurations\n  - Includes discrete hardware configurations that leverage the [NixOS Hardware modules](https://github.com/NixOS/nixos-hardware).\n\nThe [nixos/_mixins] and [home-manager/_mixins] are a collection of composited configurations based on the arguments defined in [flake.nix].\n\n## Installing 💾\n\n- Boot off an .iso image created by this flake using `build-iso console` or `build-iso \u003cdesktop\u003e` (_see below_) 💿\n- Put the .iso image on a USB drive, I use [USBImager](https://bztsrc.gitlab.io/usbimager/)\n- Boot the target computer from the USB drive\n- Two installation options are available:\n  1 Run `install-system \u003chostname\u003e \u003cusername\u003e` from a terminal\n  - The install script uses [Disko] to automatically partition and format the disks, then uses my flake via `nixos-install` to complete a full-system installation\n  - This flake is copied to the target user's home directory as `~/Zero/nix-config`\n  - `nixos-enter` is used to automatically chroot into the new system and apply the Home Manager configuration\n    2 The desktop iso image includes the graphical Calamares installer if an ad-hoc system installation is required\n- Make a cuppa 🫖\n- Reboot 🥾\n\n### Installing to a remote host 🌍\n\nAs [Disko] is used to declare the disk layout for all my NixOS hosts, each NixOS configurations can be deployed to a remote host using [nixos-anywhere].\nI've created a simple wrapper around `nixos-anywhere` that makes it a bit simpler to deploy a NixOS configuration to a remote host.\nFor example, `malak` is a Hetzner dedicated server.\nTo deploy it, enable the Hetzner Rescue system and then execute the following command from one of my workstations:\n\n```bash\ninstall-anywhere -h malak -r \u003cip-address\u003e\n```\n\nWhen the deployment is complete, the remote host will be automatically rebooted.\nI keep my Home Manager configuration separate from my NixOS configuration, so after the NixOS configuration has been deployed, I SSH in to the remote host and activate the Home Manager configuration:\n\n```bash\nsudo chown -Rv \"$USER\":users \"$HOME/.config\"\ngit clone https://github.com/wimpysworld/nix-config \"$HOME/Zero/nix-config\"\nhome-manager switch -b backup --flake \"$HOME/Zero/nix-config\"\n```\n\n## Applying Changes ✨\n\nI clone this repo to `~/Zero/nix-config`. NixOS and Home Manager changes are applied separately because I tend to iterate on the Home Manager configuration more frequently than the NixOS configuration.\n\n```bash\ngh repo clone wimpysworld/nix-config \"$HOME/Zero/nix-config\"\ncd \"$HOME/Zero/nix-config\"\n```\n\nThis flake includes a [justfile](./justfile) that provides convenient commands for building and applying configurations.\n\n- ❄️ **NixOS \u0026 macOS:** Use `just host` to build and switch the NixOS or nix-darwin configuration.\n  - `just build-host` to only build.\n  - `just switch-host` to only switch.\n- 🏠️ **Home Manager:** Use `just home` to build and switch the Home Manager configuration.\n  - `just build-home` to only build.\n  - `just switch-home` to only switch.\n- 🌍️ **All:**\n  - `just build` to build both NixOS/nix-darwin and Home Manager configurations.\n  - `just switch` to switch to both NixOS/nix-darwin and Home Manager configurations.\n\n### ISO 📀\n\nThe `just iso \u003ciso_name\u003e` command creates an .iso image from this flake:\n\n- `just iso console` (_terminal environment_): Includes `install-system` for automated installation.\n\nLive images will be left in `result/iso/` and are also injected into `~/Quickemu/nixos-iso-\u003ciso_name\u003e/nixos.iso` respectively.\nThe console .iso image is also periodically built and published via [GitHub Actions](./.github/workflows) and is available in [this project's Releases](https://github.com/wimpysworld/nix-config/releases).\n\n### Building without just\n\nIf `nh`, `nom`, `just` and `home-manager` are not available here are traditional ways to build and switch.\n\n**NixOS**\n\n```shell\nsudo nixos-rebuild boot --flake $HOME/Zero/nix-config\nsudo nixos-rebuild switch --flake $HOME/Zero/nix-config\nnix build .#nixosConfigurations.{hostname}.config.system.build.toplevel\nnix run github:nix-community/nixos-anywhere -- --flake '.#{hostname}' root@{ip-address}\n```\n\n**nix-darwin**\n\n```shell\nnix run nix-darwin -- switch --flake ~/Zero/nix-config\nnix build .#darwinConfigurations.{hostname}.config.system.build.toplevel\n```\n\n**Home Manager**\n\n```shell\nhome-manager build --flake $HOME/Zero/nix-config -L\nhome-manager switch -b backup --flake $HOME/Zero/nix-config\nnix run nixpkgs#home-manager -- build --flake \"$HOME/Zero/nix-config\"\nnix run nixpkgs#home-manager -- switch -b backup --flake \"$HOME/Zero/nix-config\"\n```\n\n**ISO**\n\n```shell\nnix build .#nixosConfigurations.iso-console.config.system.build.isoImage\n```\n\n## What's in the box? 🎁\n\nNix is configured with [flake support](https://zero-to-nix.com/concepts/flakes) and the [unified CLI](https://zero-to-nix.com/concepts/nix#unified-cli) enabled.\n\n### Structure\n\nHere's the directory structure I'm using:\n\n```\n.\n├── darwin\n│  ├── _mixins\n│  │  ├── desktop\n│  │  ├── scripts\n│  │  └── users\n│  ├── krall\n│  └── default.nix\n├── home-manager\n│  ├── _mixins\n│  │  ├── configs\n│  │  ├── desktop\n│  │  ├── features\n│  │  ├── scripts\n│  │  ├── services\n│  │  └── users\n│  └── default.nix\n├── lib\n│  └── default.nix\n├── nixos\n│  ├── _mixins\n│  │  ├── configs\n│  │  ├── desktop\n│  │  ├── features\n│  │  ├── scripts\n│  │  ├── services\n│  │  └── users\n│  ├── iso-console\n│  ├── crawler -\u003e dagger\n│  ├── dagger\n│  ├── malak\n│  ├── maul\n│  ├── phasma\n│  ├── revan\n│  ├── sidious\n│  ├── tanis\n│  ├── vader\n│  └── default.nix\n├── overlays\n│  └── default.nix\n├── pkgs\n│  └── default.nix\n├── secrets\n│  └── secrets.yaml\n├── flake.nix\n└── justfile\n```\n\n- The NixOS, macOS (darwin) and Home Manager configurations are in the `nixos`, `darwin` and `home-manager` directories respectively, they are structured in a similar way with `_mixins` directories that contain the configurations applied via mixin pattern that compose the final configuration.\n- The `lib` directory contains helper functions for the `nixos`, `nix-darwin` and `home-manager` configurations.\n- The `overlays` directory hold my custom overlays.\n- The `pkgs` directory contains my custom local packages.\n- The `secrets` directory contains secrets managed by [sops-nix].\n- The `default.nix` files in the root of each directory are the entry points.\n\n### The Shell 🐚\n\nA fully _\"oxidised\"_ 🦀 [Modern Unix] shell experience is provided by [Fish shell](https://fishshell.com/) 🐟️ with [Starship](https://starship.rs/) 🚀 and a collection of tools that deliver a contempory UX to my terminal ‍🧑‍💻\n\nThe base system has a firewall enabled and also includes [OpenSSH], [sops-nix] for secret management, [Tailscale], [Distrobox](./nixos/_mixins/features/distrobox/default.nix) and, of course, a delightfully configured [micro]. (_Fight me!_ 🥊)\nUseful shell scripts I used to keep in muddle of git repos are now migrated to [NixOS scripts](./nixos/_mixins/scripts) and [Home Manager scripts](./home-manager/_mixins/scripts) to provide a declarative, reproducible and `shellcheck` validated toolbox 🧰\n\n![fastfetch on Phasma](.github/screenshots/fastfetch.png)\n\n### The Desktop 🖥️\n\nHyprland 💧 and Wayfire 🔥 desktop options are available.\nThe font configuration is common for all desktops using [Work Sans](https://fonts.google.com/specimen/Work+Sans) and [Fira Code](https://fonts.google.com/specimen/Fira+Code).\nThe usual creature comforts you'd expect to find in a Linux Desktop are integrated such as Pipewire, Bluetooth, Avahi, CUPS, SANE and NetworkManager.\n\n|  Desktops   |      NixOS       |      Home Manager       |      Theme       |\n| :---------: | :--------------: | :---------------------: | :--------------: |\n| 💧 Hyprland | [Hyprland NixOS] | [Hyprland Home Manager] | Catppuccin Mocha |\n| 🔥 Wayfire  | [Wayfire NixOS]  | [Wayfire Home Manager]  | Catppuccin Mocha |\n\n## Eye Candy 👀🍬\n\n![Hyprland on Shaa](.github/screenshots/hyprland.png)\n\n\u003cdiv align=\"center\"\u003e\u003csmall\u003eHyprland on Shaa; \u003ci\u003ea work in progress; soon to be daily driver\u003c/i\u003e\u003c/small\u003e\u003c/div\u003e\n\n## Post-install Checklist\n\nThings I currently need to do manually after installation.\n\n### Secrets\n\n- [ ] Provision `/var/lib/private/sops/age/keys.txt`\n- [ ] Provision `~/.config/sops/age/keys.txt`\n- [ ] 1Password - authenticate\n- [ ] LastPass - authenticate\n- [ ] Run `determinate-nixd login`\n- [ ] Run `gh auth login`\n- [ ] Tailscale - `sudo tailscale up --operator=\"$USER\"`\n- [ ] Run `gpg-restore`\n- [ ] Keybase - `keybase login`\n\n### Accounts\n\n- [ ] Atuin\n  - `atuin login -u \u003cusername\u003e`\n  - `atuin sync -f`\n- [ ] Brave - enroll sync\n- [ ] Chatterino - authenticate\n- [ ] Discord - authenticate\n- [ ] GitKraken\n  - [ ] Authenticate with GitHub\n  - [ ] Create Personal Profile\n  - [ ] Create Work Profile\n- [ ] Grammarly - authenticate\n- [ ] Maelstral - `maestral_qt`\n- [ ] Matrix - authenticate\n- [ ] Slack - authenticate\n- [ ] Syncthing - Connect API and introduce host\n- [ ] Telegram - authenticate\n- [ ] VSCode - authenticate with GitHub enable sync\n- [ ] Wavebox - authenticate Google and restore profile\n\n### System\n\n`defender` and `fighter` are Ubuntu virtual machines run under [Lima] for my Ubuntu MATE development and testing environments.\n\n- [ ] Tools\n  - `install-cdebug`\n  - `install-chainctl`\n  - `install-wolfi-package-status`\n  - `install-yam`\n- [ ] On Linux run\n  - `create-defender`\n  - `create-fighter`\n- [ ] On macOS run\n  - `install-homebrew`\n  - `install-docker`\n  - Run Docker Desktop to complete the setup.\n\n#### Malak\n\n- [ ] Create ntfy user and ACLs\n      `sudo ntfy user add --role=admin \u003cusername\u003e`\n      `sudo ntfy access everyone \u003ctopic\u003e rw`\n\n### Themes\n\nSome applications require manual configuration to apply the correct theme.\n\n- [ ] Enable [Stylus](https://github.com/openstyles/stylus) Sync to Dropbox to get [Catppuccin userstyles](https://github.com/catppuccin/userstyles/releases/tag/all-userstyles-export) and **Enable Patch CSP**\n  - [ ] Brave\n  - [ ] Chrome\n  - [ ] Chromium\n  - [ ] Firefox\n  - [ ] Wavebox\n- [ ] Cider\n  - Open Cider\n  - Menu → Marketplace → Themes\n  - Find Catppuccin and your favorite flavor\n  - Click Install\n- [ ] Discord OpenAsar\n  - [ ] Add Catppuccin CSS\n\n```css\n/* mocha */\n@import url(\"https://catppuccin.github.io/discord/dist/catppuccin-mocha.theme.css\");\n@import url(\"https://catppuccin.github.io/discord/dist/catppuccin-mocha-blue.theme.css\");\n```\n\n### Windows Boot Manager on multi-disk systems\n\nOne of my laptops (`sidious`) is a multi-disk system with Windows 11 Pro 🪟 installed on a separate disk from NixOS.\nThe Windows EFI partition is not automatically detected by systemd-boot, because it is on a different disk.\nThe following steps are required to copy the Windows Boot Manager to the NixOS EFI partition so dual-booting is possible.\n\nFind Windows EFI Partition\n\n```shell\nlsblk -o NAME,FSTYPE,SIZE,MOUNTPOINT\n```\n\nMount Windows EFI Partition\n\n```shell\nsudo mkdir /mnt/win-efi\nsudo mount /dev/nvme1n1p1 /mnt/win-efi\n```\n\nCopy Contents of Windows EFI to NixOS EFI\n\n```shell\nsudo rsync -av /mnt/win-efi/EFI/Microsoft/ /boot/EFI/Microsoft/\n```\n\nClean up\n\n```shell\nsudo umount /mnt/win-efi\nsudo rm -rf /mnt/win-efi\n```\n\nReboot and systemd-boot should now offer the option to boot NixOS and Windows.\n\n## Inspirations 🧑‍🏫\n\nBefore preparing my NixOS and Home Manager configurations I looked at what other Nix users were doing.\nMy colleagues shared their configs and tips which included [nome from Luc Perkins], [nixos-config from Cole Helbling], [flake from Ana Hoverbear] and her [Declarative GNOME configuration with NixOS] blog post.\nA couple of friends also shared their configurations and here's [Jon Seager's nixos-config] and [Matthew Croughan's nixcfg].\n\nI liked the directory hierarchy in [Jon Seager's nixos-config] and the mixin pattern used in [Matthew Croughan's nixcfg], so my Nix configuration is influenced by both of those.\nAna's excellent [Declarative GNOME configuration with NixOS] blog post was essential to achieving a fully declaritive desktop configuration 🚀\n\n**After I created my initial flake I found [nix-starter-configs] by [Gabriel Fontes](https://m7.rs) which is an excellent starting point**.\nI have since incorporated many of the techniques it demonstrates.\nSimilarly, some of my nix-darwin configuration is inspired by [nix-darwin-kickstarter].\n\nThere's plenty to learn from browsing other people's Nix configurations.\nI recommend a search of [GitHub nixos configuration] from time to time to see what interesting techniques you pick up and new tools you might discover ️🕵️\n\nMy use of [Disko] and automated installation script were inspired by the these blog posts:\n\n- [Setting up my new laptop: nix style](https://bmcgee.ie/posts/2022/12/setting-up-my-new-laptop-nix-style/)\n- [Setting up my machines: nix style](https://aldoborrero.com/posts/2023/01/15/setting-up-my-machines-nix-style/)\n\n[nome from Luc Perkins]: https://github.com/the-nix-way/nome\n[nixos-config from Cole Helbling]: https://github.com/cole-h/nixos-config\n[flake from Ana Hoverbear]: https://github.com/Hoverbear-Consulting/flake\n[Declarative GNOME configuration with NixOS]: https://hoverbear.org/blog/declarative-gnome-configuration-in-nixos/\n[Jon Seager's nixos-config]: https://github.com/jnsgruk/nixos-config\n[Matthew Croughan's nixcfg]: https://github.com/MatthewCroughan/nixcfg\n[GitHub nixos configuration]: https://github.com/search?q=nixos+configuration\n[nix-starter-configs]: https://github.com/Misterio77/nix-starter-configs\n[nix-darwin-kickstarter]: https://github.com/ryan4yin/nix-darwin-kickstarter\n[NixOS]: https://nixos.org/\n[nix-darwin]: https://github.com/LnL7/nix-darwin\n[Home Manager]: https://github.com/nix-community/home-manager\n[Disko]: https://github.com/nix-community/disko\n[nixos-anywhere]: https://github.com/nix-community/nixos-anywhere\n[sops-nix]: https://github.com/Mic92/sops-nix\n[Frame Desktop Mainboard]: https://frame.work/gb/en/products/framework-desktop-mainboard-amd-ryzen-ai-max-300-series\n[TRX40-DESIGNARE]: https://www.gigabyte.com/Motherboard/TRX40-DESIGNARE-rev-10\n[Z390-DESIGNARE]: https://www.gigabyte.com/Motherboard/Z390-DESIGNARE-rev-10#kf\n[MEG-X570-UNIFY]: https://www.msi.com/Motherboard/MEG-X570-UNIFY\n[MEG-X570-ACE]: https://www.msi.com/Motherboard/MEG-X570-ACE\n[NUC5i7RYH]: https://www.intel.co.uk/content/www/uk/en/products/sku/87570/intel-nuc-kit-nuc5i7ryh/specifications.html\n[NUC6i7KYK]: https://ark.intel.com/content/www/us/en/ark/products/89187/intel-nuc-kit-nuc6i7kyk.html\n[TRX40-DESIGNARE]: https://www.gigabyte.com/Motherboard/TRX40-DESIGNARE-rev-10#kf\n[ROG Crosshair VIII Impact]: https://rog.asus.com/uk/motherboards/rog-crosshair/rog-crosshair-viii-impact-model/\n[B360 HD3P-LM]: https://www.gigabyte.com/Motherboard/B360-HD3P-rev-10\n[Framework 16]: https://frame.work/gb/en/laptop16\n[ThinkPad P1 Gen 1]: https://www.lenovo.com/gb/en/p/laptops/thinkpad/thinkpadp/thinkpad-p1/22ws2wpp101\n[ThinkPad Z13 Gen 1]: https://www.lenovo.com/gb/en/p/laptops/thinkpad/thinkpadz/thinkpad-z13-(13-inch-amd)/21d20012uk\n[ThinkPad T14s Gen 1]: https://www.lenovo.com/gb/en/p/laptops/thinkpad/thinkpadt/t14s-amd-g1/22tpt144sa2\n[ThinkPad T495s]: https://www.lenovo.com/us/en/p/laptops/thinkpad/thinkpadt/t495s/22tp2tt495s\n[Macbook Air M2 15\"]: https://www.apple.com/uk/macbook-air-13-and-15-m2/\n[Macbook Pro (Mid 2015)]: https://support.apple.com/en-us/111955\n[Steam Deck 64GB LCD]: https://store.steampowered.com/steamdeck\n[GB-BXCEH-2955]: https://www.gigabyte.com/uk/Mini-PcBarebone/GB-BXCEH-2955-rev-10\n[GB-BXCEH-2955 Review]: https://nucblog.net/2014/11/gigabyte-brix-2955u-review/\n[QEMU]: https://www.qemu.org/\n[Lima]: https://lima-vm.io/\n[Intel Core i9-9900K]: https://www.intel.com/content/www/us/en/products/sku/186605/intel-core-i99900k-processor-16m-cache-up-to-5-00-ghz/specifications.html\n[Intel Core i7-8700]: https://www.intel.com/content/www/us/en/products/sku/126686/intel-core-i78700-processor-12m-cache-up-to-4-60-ghz/specifications.html\n[Intel Xeon E-2176M]: https://ark.intel.com/content/www/us/en/ark/products/134867/intel-xeon-e-2176m-processor-12m-cache-up-to-4-40-ghz.html\n[Intel Core i7-5557U]: https://www.intel.com/content/www/us/en/products/sku/84993/intel-core-i75557u-processor-4m-cache-up-to-3-40-ghz/specifications.html\n[Intel Core i7-6770HQ]: https://ark.intel.com/content/www/us/en/ark/products/93341/intel-core-i7-6770hq-processor-6m-cache-up-to-3-50-ghz.html\n[Intel Celeron 2955U]: https://www.intel.com/content/www/us/en/products/sku/75608/intel-celeron-processor-2955u-2m-cache-1-40-ghz/specifications.html\n[AMD Ryzen Threadripper 3970X]: https://www.amd.com/en/newsroom/press-releases/2019-11-7-amd-introduces-world-s-fastest-high-end-desktop-pr.html\n[AMD Ryzen AI Max+ 395]: https://www.amd.com/en/products/processors/laptop/ryzen/ai-300-series/amd-ryzen-ai-max-plus-395.html\n[AMD Ryzen 9 5950X]: https://www.amd.com/en/products/cpu/amd-ryzen-9-5950x\n[AMD Ryzen 9 5900X]: https://www.amd.com/en/products/cpu/amd-ryzen-9-5900x\n[AMD Ryzen 7 7940HS]: https://www.amd.com/en/products/processors/laptop/ryzen/7000-series/amd-ryzen-9-7940hs.html\n[AMD Ryzen 5 PRO 6650U]: https://www.amd.com/en/products/apu/amd-ryzen-5-pro-6650u\n[AMD Ryzen 5 PRO 4650U]: https://www.amd.com/en/support/downloads/drivers.html/processors/ryzen-pro/ryzen-pro-4000-series/amd-ryzen-5-pro-4650u.html\n[AMD Ryzen 7 3700U]: https://www.amd.com/en/support/downloads/drivers.html/processors/ryzen/ryzen-3000-series/amd-ryzen-7-3700u.html#amd_support_product_spec\n[AMD Ryzen Threadripper 3970X]: https://www.amd.com/en/support/cpu/amd-ryzen-processors/amd-ryzen-threadripper-processors/amd-ryzen-threadripper-3970x\n[AMD Radeon 8060S]: https://www.techpowerup.com/gpu-specs/radeon-8060s.c4270\n[Intel Arc A770 16GB]: https://www.intel.com/content/www/us/en/products/sku/229151/intel-arc-a770-graphics-16gb/specifications.html\n[Fighter RX 6800]: https://www.powercolor.com/product?id=1606212415\n[Fighter RX 6700 XT]: https://www.powercolor.com/product?id=1612512944\n[Fighter RX 7900 GRE]: https://www.powercolor.com/product-detail186.htm\n[RTX 2000E Ada Generation]: https://www.pny.com/rtx-2000e-ada-generation\n[GeForce RTX 3090 GAMING OC]: https://www.gigabyte.com/uk/Graphics-Card/GV-N3090GAMING-OC-24GD#kf\n[NVIDIA Quadro P2000 Max-Q]: https://www.nvidia.com/content/dam/en-zz/Solutions/design-visualization/productspage/quadro/quadro-desktop/quadro-pascal-p2000-data-sheet-us-nvidia-704443-r2-web.pdf\n[NVIDIA T1000]: https://www.nvidia.com/content/dam/en-zz/Solutions/design-visualization/productspage/quadro/quadro-desktop/proviz-print-nvidia-T1000-datasheet-us-nvidia-1670054-r4-web.pdf\n[NVIDIA T600]: https://www.nvidia.com/content/dam/en-zz/Solutions/design-visualization/productspage/quadro/quadro-desktop/proviz-print-nvidia-T600-datasheet-us-nvidia-1670029-r5-web.pdf\n[NVIDIA T400]: https://www.nvidia.com/content/dam/en-zz/Solutions/design-visualization/productspage/quadro/quadro-desktop/nvidia-t400-datasheet-1987150-r3.pdf\n[VirGL]: https://docs.mesa3d.org/drivers/virgl.html\n[.github]: ./github/workflows\n[darwin]: ./darwin\n[home-manager]: ./home-manager\n[nixos]: ./nixos\n[nixos/_mixins]: ./nixos/_mixins\n[home-manager/_mixins]: ./home-manager/_mixins\n[flake.nix]: ./flake.nix\n[Modern Unix]: ./home-manager/default.nix\n[OpenSSH]: ./nixos/_mixins/services/ssh/default.nix\n[micro]: https://micro-editor.github.io/\n[Tailscale]: https://tailscale.com/\n[Hyprland NixOS]: ./nixos/_mixins/desktop/hyprland/default.nix\n[Wayfire NixOS]: ./nixos/_mixins/desktop/wayfire/default.nix\n[Hyprland Home Manager]: ./home-manager/_mixins/desktop/hyprland/default.nix\n[Wayfire Home Manager]: ./home-manager/_mixins/desktop/wayfire/default.nix\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwimpysworld%2Fnix-config","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwimpysworld%2Fnix-config","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwimpysworld%2Fnix-config/lists"}