{"id":19026834,"url":"https://github.com/shuritch/nixos","last_synced_at":"2025-04-23T13:04:36.749Z","repository":{"id":195357096,"uuid":"692762566","full_name":"shuritch/nixos","owner":"shuritch","description":"❄️ This is setup for my NixOS devices. ❄️","archived":false,"fork":false,"pushed_at":"2024-11-08T19:33:38.000Z","size":70053,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-08T20:28:22.316Z","etag":null,"topics":["color-scheme","config","configuration","declarative-programming","dotfiles","home-manager","linux","linux-rice","nix","nix-flake","nixos","nixos-configuration","os","rice","setup","unix","unixporn"],"latest_commit_sha":null,"homepage":"","language":"Nix","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/shuritch.png","metadata":{"files":{"readme":".github/README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2023-09-17T14:07:38.000Z","updated_at":"2024-11-08T19:33:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"91764286-b3f5-4fe4-95ca-3d4a2a6a952f","html_url":"https://github.com/shuritch/nixos","commit_stats":null,"previous_names":["sashapop10/nixos","shuritch/nixos"],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shuritch%2Fnixos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shuritch%2Fnixos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shuritch%2Fnixos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shuritch%2Fnixos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shuritch","download_url":"https://codeload.github.com/shuritch/nixos/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223753955,"owners_count":17196930,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["color-scheme","config","configuration","declarative-programming","dotfiles","home-manager","linux","linux-rice","nix","nix-flake","nixos","nixos-configuration","os","rice","setup","unix","unixporn"],"created_at":"2024-11-08T20:50:52.575Z","updated_at":"2024-11-08T20:50:53.149Z","avatar_url":"https://github.com/shuritch.png","language":"Nix","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Atlas](./assets/2024-10-09-atlas.png \"State of 2024-10-09\")\n\n\u003ch1 align=\"center\"\u003e\nDeep dive into declarative configuration\n\u003c/h1\u003e\n\n\u003c!-- \u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://github.com/shuritch/nixos/issues\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/issues/shuritch/nixos?color=dd5c89\u0026labelColor=282828\u0026style=for-the-badge\u0026logo=sparkfun\u0026logoColor=dd5c89\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/shuritch/nixos/stargazers\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/repo-size/shuritch/nixos?color=9c76ef\u0026labelColor=282828\u0026style=for-the-badge\u0026logo=github\u0026logoColor=9c76ef\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/shuritch/nixos\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/NixOS-unstable-blue.svg?style=for-the-badge\u0026labelColor=282828\u0026logo=NixOS\u0026logoColor=2ba1f6\u0026color=2ba1f6\"\u003e\n  \u003c/a\u003e\n    \u003ca href=\"https://github.com/shuritch/nixos/pulse\"\u003e\n    \u003cimg alt=\"Last commit\" src=\"https://img.shields.io/github/last-commit/shuritch/nixos?style=for-the-badge\u0026logo=starship\u0026color=04B29F\u0026logoColor=04B29F\u0026labelColor=302D41\"/\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/shuritch/nixos/blob/main/.github/LICENCE\"\u003e\n    \u003cimg src=\"https://img.shields.io/static/v1.svg?style=for-the-badge\u0026label=License\u0026message=MIT\u0026colorA=282828\u0026colorB=00b557\u0026logo=unlicense\u0026logoColor=00b557\u0026\"/\u003e\n  \u003c/a\u003e\n    \u003ca href=\"https://github.com/shuritch/nixos/releases/latest\"\u003e\n    \u003cimg alt=\"Latest release\" src=\"https://img.shields.io/github/v/release/shuritch/nixos?style=for-the-badge\u0026logo=nixos\u0026color=C0C9D5\u0026logoColor=C0C9D5\u0026labelColor=302D41\" /\u003e\n  \u003c/a\u003e\n\u003c/div\u003e --\u003e\n\n\u003cdiv align=\"center\"\u003e\n\u003cp\u003e\n\n**[\u003ckbd\u003e\u003cbr\u003e\u0026nbsp;Installation\u0026nbsp;\u003cbr\u003e\u003cbr\u003e\u003c/kbd\u003e](#installation)**\n**[\u003ckbd\u003e\u003cbr\u003e\u0026nbsp;Structure\u0026nbsp;\u003cbr\u003e\u003cbr\u003e\u003c/kbd\u003e](#structure)**\n**[\u003ckbd\u003e\u003cbr\u003e\u0026nbsp;Flake\u0026nbsp;\u003cbr\u003e\u003cbr\u003e\u003c/kbd\u003e](../flake.nix)**\n**[\u003ckbd\u003e\u003cbr\u003e\u0026nbsp;Assets\u0026nbsp;and\u0026nbsp;Preview\u0026nbsp;\u003cbr\u003e\u003cbr\u003e\u003c/kbd\u003e](./assets/)**\n**[\u003ckbd\u003e\u003cbr\u003e\u0026nbsp;Cluster\u0026nbsp;\u003cbr\u003e\u003cbr\u003e\u003c/kbd\u003e](../cluster/)**\n**[\u003ckbd\u003e\u003cbr\u003e\u0026nbsp;Modules\u0026nbsp;\u003cbr\u003e\u003cbr\u003e\u003c/kbd\u003e](../src/modules/)**\n**[\u003ckbd\u003e\u003cbr\u003e\u0026nbsp;Workflows\u0026nbsp;\u003cbr\u003e\u003cbr\u003e\u003c/kbd\u003e](./workflows/)**\n\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n\u003ccode\u003e📦\u0026nbsp;Userland\u0026nbsp;Isolation\u003c/code\u003e\n\u003ccode\u003e🍙\u0026nbsp;Declarative\u003c/code\u003e\n\u003ccode\u003e🌱\u0026nbsp;Reproducible\u003c/code\u003e\n\u003ccode\u003e👁️‍🗨️\u0026nbsp;Private\u003c/code\u003e\n\u003ccode\u003e🛡️\u0026nbsp;Secure\u003c/code\u003e\n\u003ccode\u003e🏗️\u0026nbsp;Custom\u0026nbsp;Installer\u003c/code\u003e\n\u003ccode\u003e🧪\u0026nbsp;CI\u003c/code\u003e\n\u003ccode\u003e🎨\u0026nbsp;Colorscheme\u0026nbsp;based\u0026nbsp;on\u0026nbsp;wallpaper\u003c/code\u003e\n\u003ccode\u003e🔧\u0026nbsp;Extensively\u0026nbsp;configured\u003c/code\u003e\n\u003ccode\u003e🐧\u0026nbsp;Minimal\u0026nbsp;when\u0026nbsp;needed\u003c/code\u003e\n\u003ccode\u003e🧳\u0026nbsp;Role\u0026nbsp;based\u0026nbsp;configuration\u003c/code\u003e\n\u003ccode\u003e🚀\u0026nbsp;Class\u0026nbsp;based\u0026nbsp;configuration\u003c/code\u003e\n\u003ccode\u003e⚡\u0026nbsp;Easy\u0026nbsp;to\u0026nbsp;manage\u003c/code\u003e\n\u003ccode\u003e🖇️\u0026nbsp;Dualboot\u0026nbsp;support\u003c/code\u003e\n\u003ccode\u003e🔃\u0026nbsp;State\u0026nbsp;synchronization\u003c/code\u003e\n\u003ccode\u003e🗿\u0026nbsp;User\u0026nbsp;specific\u0026nbsp;configuration\u003c/code\u003e\n\u003c/p\u003e\n\u003c/div\u003e\n\n## Installation\n\n\u003e [!CAUTION]\n\u003e\n\u003e Applying custom configurations, especially those related to your operating system, can have unexpected consequences and may interfere with your system's normal behavior. While I have tested these configurations on my own setup, there is no guarantee that they will work flawlessly for you. I am not responsible for any issues that may arise from using this configuration.\n\n```bash\n# Automatic installation (Live CD)\nnix-shell -p curl git\n./install.sh\n```\n\n```bash\n# Manual installation (Live CD)\nnix-shell -p curl git\ncurl https://raw.githubusercontent.com/shuritch/nixos/main/core/cluster/\u003chostname\u003e/disko.nix \u003e /mnt/config/disko.nix\n# Edit disko.nix (Replace device with name from lsblk result at least)\nsudo nix --experimental-features \"nix-command flakes\" run github:nix-community/disko -- --mode disko /mnt/config/disko.nix\ngit clone https://github.com/shuritch/nixos /mnt/etc/nixos/flake\nsudo nixos-generate-config --dir /mnt/etc/nixos\nmv -f /mnt/etc/nixos/hardware-configuration.nix /mnt/etx/nixos/flake/cluster/\u003chostname\u003e\nsudo nixos-install --flake /mnt/etc/nixos/flake#\u003chostname\u003e\n# reboot 🚀\n```\n\n## Updates\n\n```bash\nnix flake update\nsudo nixos-rebuild --upgrade switch --flake .#\u003chostname\u003e\n```\n\n## Rebuilding\n\n```bash\ngit add . # Important if new files were created\nsudo nixos-rebuild switch --flake .#\u003chostname\u003e # If Hosts updated\n```\n\n## Structure\n\n```graphql\n.\n│  # 👇 Cluster\n│ ╭\u003e atlas                          # Desktop │ 32GB RAM, i9-9900k , RTX 2080S \u0026 UHD630 │ Hyprland\n│ ├\u003e hermes                         # Laptop  │ 16GB RAM, i7-1165G7, Iris XE G7         │ Hyprland\n│ ├\u003e pandora                        # ISO     │ Bootable USB                            │ TTY\n├─┤\n│ │  # 👇 Host configuration (example)\n│ │ ╭\u003e config                       # Separated configuration\n│ │ ├\u003e hardware-configuration.nix   # Generated hardware configuration.\n│ └─┼\u003e default.nix                  # Configuration entry point.\n│   ╰\u003e host_ed25519.pub             # Ssh ed25519 public key.\n│\n│   ╭\u003e home                         # Modules written to isolate Home-manager configuration.\n│ ┌─┼\u003e core                         # Modules written to isolate Nixos configuration.\n│ │ ├\u003e class                        # Presets based on device class (server, desktop, etc).\n│ │ ╰\u003e roles                        # Presets based on chosen roles (headless, dev-kit, etc).\n│ │  # 👆 Modules\n│ │\n│ ├\u003e overlays                       # Patches and custom overrides for some packages.\n│ ├\u003e templates                      # Language based templates.\n├─┼\u003e library                        # Utilities for Nix language.\n│ ├\u003e packages                       # Self hosted packages.\n│ ╰\u003e disko                          # Disko presets.\n│  # 👆 SRC\n│\n├\u003e .github                          # Docs, assets, workflows\n├\u003e .vscode                          # Makes vscode more performant in this directory.\n├\u003e install.sh                       # Shell script for automatic installation.\n├\u003e shell.nix                        # Exposes a dev shell for bootstrapping.\n╰\u003e flake.nix                        # Entrypoint\n```\n\n\u003cp align=\"center\"\u003e\nCopyright © 2022-2024 \u003ca href=\"https://github.com/shuritch\"\u003eAlexander Ivanov\u003c/a\u003e.\u003cbr/\u003e\nThis package is \u003ca href=\"./LICENSE\"\u003eMIT licensed\u003c/a\u003e.\u003cbr/\u003e\n\u003c/p\u003e\n\n\u003ch5 align=\"center\"\u003e\n\u003cimg href=\"https://builtwithnix.org\" src=\"https://builtwithnix.org/badge.svg\"/\u003e\n\u003c/h5\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshuritch%2Fnixos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshuritch%2Fnixos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshuritch%2Fnixos/lists"}