Files
nixos/flake.nix
Claude 042b36f2e4 Configure for atlas/pinj and add Wayland session variables
- Rename hosts/hostname/ to hosts/atlas/
- Replace all <hostname> placeholders with 'atlas'
- Replace all <username> placeholders with 'pinj'
- Set timezone to Europe/Rome (with TODO note to change if needed)
- Set locale to en_US.UTF-8
- Add Wayland session variables (QT_QPA_PLATFORM, MOZ_ENABLE_WAYLAND,
  NIXOS_OZONE_WL) for proper app integration
- Remove placeholder comments that are no longer needed

https://claude.ai/code/session_01UAdmEkSeh9NGPfjRfViLWY
2026-02-01 20:00:52 +00:00

58 lines
1.6 KiB
Nix

{
description = "NixOS - Isolated Gaming & Dev configurations";
# SECURITY NOTE: After first build, commit flake.lock to pin inputs to specific
# commits. Update via `nix flake update` only from trusted sources.
# This protects against supply-chain attacks from upstream changes.
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
mango = {
url = "github:DreamMaoMao/mango";
inputs.nixpkgs.follows = "nixpkgs";
};
quickshell = {
url = "github:outfoxxed/quickshell";
inputs.nixpkgs.follows = "nixpkgs";
};
noctalia = {
url = "github:noctalia-dev/noctalia-shell";
inputs.nixpkgs.follows = "nixpkgs";
inputs.quickshell.follows = "quickshell";
};
};
outputs = { self, nixpkgs, mango, quickshell, noctalia, ... }@inputs:
let
system = "x86_64-linux";
lib = nixpkgs.lib;
specialArgs = { inherit inputs system; };
# Verify mango flake exports the expected module
mangoModule = assert lib.hasAttrByPath [ "nixosModules" "mango" ] mango;
mango.nixosModules.mango;
commonModules = [
./hosts/atlas/hardware-configuration.nix
./modules/common.nix
mangoModule
];
in {
nixosConfigurations = {
# Development configuration
dev = nixpkgs.lib.nixosSystem {
inherit system specialArgs;
modules = commonModules ++ [ ./modules/dev.nix ];
};
# Gaming configuration
gaming = nixpkgs.lib.nixosSystem {
inherit system specialArgs;
modules = commonModules ++ [ ./modules/gaming.nix ];
};
};
};
}