···11# `@andreijiroh-dev/nixops-config`
2233-This is @ajhalili2006's NixOS + Home Manager configuration for his laptop and homelabs, in sync with the
44-[nixpkgs-specific dotfiles repository]. Also planned to be used in Hack Club Nest soon.
33+This is @ajhalili2006's NixOS + Home Manager configuration for his laptop and homelabs,
44+alongside in tildes with Nix installed and in sync with the [nixpkgs-specific branch][nix-dots]
55+of my dotfiles repository.
5666-[nixpkgs-specific dotfiles repository]: https://gitlab.com/andreijiroh-dev/dotfiles/tree/nixpkgs
77+[nix-dots]: https://gitlab.com/andreijiroh-dev/dotfiles/tree/nixpkgs
7889## CI Status
910···102103```nix
103104{
104105 description = "My NixOS configuration";
105105- inputs.nixpkgs.url = "github:NixOS/nixpkgs/24.11";
106106+ inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; # use nixos-unstable instead if preferred
106107 inputs.andreijiroh-dev.url = "github:andreijiroh-dev/nixops-config";
107108 # needed if you use stable instead of unstable
108109 inputs.andreijiroh-dev.inputs.nixpkgs.follows = "nixpkgs";
109110110110- # TODO: fix this soon
111111 outputs = { self, andreijiroh-dev, nixpkgs }: {
112112- let
113113- # change {hostname} to something like stellapent-cier
114114- # if you like to reuse my configs
115115- reusableConfig = andreijiroh-dev.nixosConfigurations.{hostname};
116116- in
117112 {
118118- nixosConfigurations.{hostname} = reusableConfig {
113113+ nixosConfigurations.{hostname} = nixpkgs.lib.nixosSystem {
119114 # your customizations here
120115 };
121116···145140146141## Availabled shared configs
147142148148-- [`flatpak.nix`](./shared/flatpak.nix): NixOS for enabling Flatpaks
149149-- [`gnupg.nix`](./shared/gnupg.nix): GnuPG configuration
150150-- [`locale.nix`](./shared/locale.nix): Locale configuration
151151-- [`meta-configs.nix`](./shared/meta-configs.nix): Meta configurations for the system, mostly related to Nix and nixpkgs.
152152-- [`networking.nix`](./shared/networking.nix): Networking configuration, currently DNS resolver settings for `systemd-resolved`
153153-- [`ssh-keys.nix`](./shared/ssh-keys.nix): SSH keys configuration as NixOS module, intended to be in sync with my keys on git forges
154154-- [`server/devenv.nix`](./shared/server/devenv.nix): Development environment configuration, plus Docker and VM configurations.
155155-- [`server/ssh.nix`](./shared/server/ssh.nix): SSH server configuration
143143+- `base` - Individual base components' configuration (systemd, networking, etc.)
144144+ - [`sshKeys`](./shared/ssh-keys.nix) - My SSH public keys, declaratively managed.
145145+ = [`hostsFile`](./shared/hosts-file.nix) - Static list of host entries, used for merging with host-specific hosts file.
146146+ - [`systemd`](./shared/systemd.nix) - Systemd configurations and service units.
147147+ - [`networking`](./shared/networking.nix) - Networking configurations, mostly for configuring DNS resolvers via `systemd-resolved`.
148148+ - [`locale`](./shared/locale.nix) - Time and locale settings (e.g. timezone, i18n configs).
149149+ - [`gnupg`](./shared/gnupg.nix) - GPG Agent settings and packages related to GPG and friends
150150+ = [`metaConfigs`](./shared/meta-configs.nix) - Nixpkgs and Nix settings, also contains the `system.stateVersion` setting.
151151+- [`meta`](./shared/meta.nix) - same as `base`, but oneliner import.
156152157153## License
158154