{"id":22710596,"url":"https://github.com/mordragt/nixos","last_synced_at":"2026-03-04T02:33:15.053Z","repository":{"id":44369664,"uuid":"401142547","full_name":"MordragT/nixos","owner":"MordragT","description":"My NixOs Configuration","archived":false,"fork":false,"pushed_at":"2026-02-25T22:22:28.000Z","size":1605,"stargazers_count":17,"open_issues_count":0,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2026-02-26T00:55:01.229Z","etag":null,"topics":["impermanence","nixos","oneapi"],"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/MordragT.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"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":null,"dco":null,"cla":null}},"created_at":"2021-08-29T21:07:08.000Z","updated_at":"2026-02-25T22:22:32.000Z","dependencies_parsed_at":"2025-12-18T23:09:31.234Z","dependency_job_id":null,"html_url":"https://github.com/MordragT/nixos","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MordragT/nixos","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MordragT%2Fnixos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MordragT%2Fnixos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MordragT%2Fnixos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MordragT%2Fnixos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MordragT","download_url":"https://codeload.github.com/MordragT/nixos/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MordragT%2Fnixos/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30070122,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T01:03:42.280Z","status":"online","status_checked_at":"2026-03-04T02:00:07.464Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["impermanence","nixos","oneapi"],"created_at":"2024-12-10T12:10:43.180Z","updated_at":"2026-03-04T02:33:15.033Z","avatar_url":"https://github.com/MordragT.png","language":"Nix","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\u003cdiv align=center\u003e\n\n# ❄️ Nixos Config\n\n [![NixOS](https://img.shields.io/badge/Flakes-Nix-informational.svg?logo=nixos\u0026style=for-the-badge)](https://nixos.org) ![License](https://img.shields.io/github/license/mordragt/nixos?style=for-the-badge)\n\nSystem and home-manager configuration for my linux machines.\n\n\u003c/div\u003e\n\n## 📦 Contents\n\n- `system/config/`: Machine specific configurations\n- `system/modules/`: Nixos modules\n- `home/config/`: Home-Manager configurations\n- `home/modules/`: Home-Manager modules\n- `pkgs/`: Overlays for various packages\n\n## 🚀 How to use ?\n\nYou probably want to use flakes to use the overlay and modules defined in this repo.\n\nTODO: Show some basic examples on how to use the overlay/modules\n\n### Install on new system\n\n1. Create partitions as per your requirements (e.g., using disko or parted).\n2. Mount the partitions, excluding any tmpfs partitions.\n3. Comment out the machine-id under impermanence.\n4. Run the nixos-install command.\n5. Copy the machine-id and other necessary files into the persisted directories.\n6. Uncomment the machine-id.\n7. Run the nixos-install command again.\n\n\n```bash\nnix-shell -p git\nsudo nixos-install --flake uri#system\n```\n\n## ✨ Features\n\n### 🤫 Impermanence\n\nInstead of tediously specifying all the files you want to keep, the `environment.state` module allows you to specify only the folders you want to overlay by symlink or by mount.\nSay you have folders under `/nix/state/users/name/data` where you have all the folders which sadly do not follow the XDG directories like `.ssh` or `.minecraft` and you have\nyour home folders like `Desktop` or `Documents` under `/nix/state/users/name/home`. Then you can specify the following config:\n\n```nix\n# system/config/\u003cmachine\u003e/impermanence.nix\nenvironment.state = {\n    enable = true;\n    targets = [\n        {\n            source = \"/nix/state/users/name/home\";\n            destination = \"/home/name\";\n            method = \"mount\";\n            owner = \"name\";\n            group = \"users\";\n            mode = \"0700\";\n        }\n        {\n            source = \"/nix/state/users/name/data\";\n            destination = \"/home/name\";\n            method = \"mount\";\n            owner = \"name\";\n            group = \"users\";\n            mode = \"0700\";\n        }\n    ];\n}\n```\n\nNow to include the right folders you can just put an **@** behind every folder you want to overlay into the destination.\nFor example your folder structure might look like the following:\n\n```\n/nix/state/users/name/home\n    - Desktop@\n    - Documents@\n        - important_stuff\n        - inner_folder\n    - some_other_folder\n```\n\nNow `Desktop@` and `Documents@` will be mounted/symlinked at startup to your home folders `Desktop` and `Documents`\n\n### 🦊 Firefox Addons\n\nUnder `pkgs/by-scope/firefox-addons` are a bunch of firefox addons defined. But instead of manually creating derivations for each addon,\nthe addons are generated via the `pkgs/by-scope/firefox-addons/mod.nu` nushell script. The resulting `default.lock` is then used to create\nthe respective derivations.\n\nNow to add addons you can just add the slugs into the `pkgs/by-scope/firefox-addons/mod.nu` script and recreate the `default.lock` file\nby running `just update`\n\n*Disclaimer*: Due to some limitations of nushell, at the moment the path of `default.lock` is hardcoded into `pkgs/by-scope/firefox-addons/mod.nu`.\n    You ~~might~~ probably want to change that\n\n### 💻 Vscode Extensions\n\nThe vscode extensions are very similar to the firefox addons and are defined under `pkgs/by-scope/vscode-extensions`.\nThe **disclaimer** also applies!\n\n### 🚧 WIP Intel OneAPI\n\nIn an effort to make the *Intel Extension for Pytorch* work, I created a multitude of packages.\nUnder `pkgs/by-scope` and `pkgs/by-name` are lying the intel oneapi packages like *dpcpp* or *mkl*.\n\nTo use the dpcpp compiler you may want to use `dpcppStdenv`, which is currently somewhat functional.\n\n### 🛑 Other packages\n\nThere exist some packages in this repository which are not functional at the moment. I still keep them in here as documentation for future packaging efforts.\nI try to mark them as broken but I might have forgotten some. If you encounter any broken packages please create an issue.\n\n## ❔ FAQ\n\n... Waiting for questions ... (raise an issue in case of doubts)\n\n## ❤️ Support\n\nConsider starring the repo ⭐❄️\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmordragt%2Fnixos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmordragt%2Fnixos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmordragt%2Fnixos/lists"}