{"id":18721353,"url":"https://github.com/nuschtos/nixos-modules","last_synced_at":"2025-04-12T14:30:20.613Z","repository":{"id":82451195,"uuid":"580200071","full_name":"NuschtOS/nixos-modules","owner":"NuschtOS","description":"Opinionated, integrated and shared NixOS modules","archived":false,"fork":false,"pushed_at":"2025-04-10T14:21:48.000Z","size":804,"stargazers_count":44,"open_issues_count":16,"forks_count":4,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-10T15:54:40.319Z","etag":null,"topics":["flake","hacktoberfest","nix","nixos","nixos-module"],"latest_commit_sha":null,"homepage":"https://search.nüschtos.de/?scope=NixOS%20Modules","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/NuschtOS.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":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-12-20T00:48:49.000Z","updated_at":"2025-04-10T14:21:51.000Z","dependencies_parsed_at":"2023-09-26T22:26:16.082Z","dependency_job_id":"4671888e-6b14-4308-97ae-dda3df437fd2","html_url":"https://github.com/NuschtOS/nixos-modules","commit_stats":null,"previous_names":["nuschtos/nixos-modules"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NuschtOS%2Fnixos-modules","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NuschtOS%2Fnixos-modules/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NuschtOS%2Fnixos-modules/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NuschtOS%2Fnixos-modules/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NuschtOS","download_url":"https://codeload.github.com/NuschtOS/nixos-modules/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248580925,"owners_count":21128080,"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":["flake","hacktoberfest","nix","nixos","nixos-module"],"created_at":"2024-11-07T13:34:21.633Z","updated_at":"2025-04-12T14:30:20.596Z","avatar_url":"https://github.com/NuschtOS.png","language":"Nix","readme":"# NixOS Modules\n\nCollection of opinionated, integrated and shared NixOS modules.\n\nThis includes features like:\n- Backend independent LDAP/OAuth2 abstraction with service integration\n- A continuation of environment.noXLibs named environment.noGraphicsPackages\n- Easy Postgres upgrades between major versions and installation of `pg_stat_statements` extension in all databases\n- Easy integration of Matrix Synapse, Element Web and extra oembed providers\n- Configure extra dependencies in Nextcloud for the Recognize and Memories Apps and properly setup preview generation\n- Restricted nix remote builders which can only execute remote builds\n- More opinionated integrations on top of Portunus (Simple LDAP frontend), dex and oauth2-proxy\n\nand many smaller integrations like:\n\n- git-delta\n- Harmonia Nginx\n- Intel hardware acceleration\n- Mailman PostgreSQL\n- Nginx TCP fast open\n- Nix diff system on activation and dry-activation\n- easy configuration of HTTP/HTTPS targets in Prometheus blackbox exporter\n- Vaultwarden Nginx and Postgres\n- ... and much more!\n\n## Usage\n\nAdd or merge the following settings to your `flake.nix`:\n\n```nix\n{\n  inputs = {\n    nixpkgs.url = \"github:NuschtOS/nuschtpkgs/nixos-unstable\";\n    nixos-modules = {\n      url = \"github:NuschtOS/nixos-modules\";\n      inputs.nixpkgs.follows = \"nixpkgs\";\n    };\n  };\n\n  outputs = { nixos-modules, ... }: {\n    nixosConfigurations.HOSTNAME = {\n      modules = [\n       nixos-modules.nixosModule\n    ];\n  };\n}\n```\n\nIf your `nixpkgs` input is named differently, update the `follows` to your name accordingly.\n\nBy using `nixos-modules.nixosModule`, all available modules are imported.\n\nIt is also possible to only import a subset of modules.\nUnder `nixos-modules.nixosModules.\u003cname\u003e` we expose all modules available in the modules directory.\nThis requires manually providing `libS` as a module argument.\nThe following snippet is equal to what adding all modules is doing:\n```nix\n{\n  _module.args.libS = lib.mkOverride 1000 (self.lib { inherit lib config; });\n}\n```\n\n## Available options\n\nPlease use our [options search site](https://search.xn--nschtos-n2a.de/?scope=NixOS%20Modules) to find and browse all available options. It supports searching for option names, wildcards and can be [self hosted](https://github.com/NuschtOS/search), too.\n\n## Compatibility note\n\nSometimes we use options from yet-to-be-merged Nixpkgs pull requests.\nNormally that fails evaluation because lib.mkIf also checks the types if the condition is false.\nThis can be hacked around by using `lib.optional*` or `if ... then ... else ...` but then the option does not work.\nTo close that gap we offer a nixpkgs fork named [nüschtpkgs](https://github.com/NuschtOS/nuschtpkgs).\nIt contains the latest stable branch and unstable and it is daily rebased.\nWe use CI checks to ensure that the modules evaluate on the current stable and unstable branch and some selected forks.\n\n## Design\n\n* Modules should never change the configuration without setting an option\n* Unless the global overwrite ``opinionatedDefaults = true`` is set which activates most settings.\n  Unless you know what you are doing, you shouldn't really set this option.\n\n## Similar projects\n\n* \u003chttps://github.com/nix-community/srvos\u003e\n* \u003chttps://gitea.c3d2.de/C3D2/nix-user-module\u003e\n\n## Contact\n\nFor bugs and issues please open an issue in this repository.\n\nIf you want to chat about things or have ideas, feel free to join the [Matrix chat](https://matrix.to/#/#nuschtos:c3d2.de).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnuschtos%2Fnixos-modules","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnuschtos%2Fnixos-modules","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnuschtos%2Fnixos-modules/lists"}