[HermesAI]
Główne zmiany:
1. Separacja pakietów (best practice 2025+):
- base.nix: tylko konfiguracja Nix-a (gc, flakes, allowUnfree), zero pakietów
- home.nix: wszystkie pakiety użytkownika (brave, neovim, git, lutris, itd.)
- NixOS modules (plasma.nix, gaming.nix): tylko enable serwisów, bez pakietów
2. Tibia jako shared home-manager module:
- modules/home/tibia.nix — opcja programs.tibia.enable dostępna dla każdego usera
- Rejestracja przez home-manager.sharedModules w flake.nix
- packages/libxml2-2.9/ — osobny callPackage zamiast inline build
- Nowe: tibia-install (pobiera launcher na świeżym systemie), .desktop entry
- tibia-patch: check "already patched", quoted heredoc (bez expandowania $@)
- Poprawiona ścieżka do tibia-client (store path przez ${...} zamiast /run/...)
3. Porządki:
- Usunięte puste moduły (3dmodel, 3dprint, network, office) — pakiety w home.nix
- hosts/nix-latitude/configuration.nix: usunięty duplikat hostname, packages z usera
- flake.nix: home-manager spięty do nixos-unstable, usunięty brakujący host nix-gaming
- .gitignore: result, .direnv, *.swp
UWAGA: Wymaga nix flake lock na maszynie NixOS po pull.
Nowy user: programs.tibia.enable = true w home.nix + tibia-install.
47 lines
1 KiB
Nix
47 lines
1 KiB
Nix
{ config, pkgs, ... }:
|
|
|
|
{
|
|
imports = [
|
|
./hardware-configuration.nix
|
|
];
|
|
|
|
# Bootloader
|
|
boot.loader.systemd-boot.enable = true;
|
|
boot.loader.efi.canTouchEfiVariables = true;
|
|
|
|
# Use latest kernel
|
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
|
|
|
# Enable networking
|
|
networking.networkmanager.enable = true;
|
|
|
|
# Timezone
|
|
time.timeZone = "Europe/Warsaw";
|
|
|
|
# Locale
|
|
i18n.defaultLocale = "pl_PL.UTF-8";
|
|
i18n.extraLocaleSettings = {
|
|
LC_ADDRESS = "pl_PL.UTF-8";
|
|
LC_IDENTIFICATION = "pl_PL.UTF-8";
|
|
LC_MEASUREMENT = "pl_PL.UTF-8";
|
|
LC_MONETARY = "pl_PL.UTF-8";
|
|
LC_NAME = "pl_PL.UTF-8";
|
|
LC_NUMERIC = "pl_PL.UTF-8";
|
|
LC_PAPER = "pl_PL.UTF-8";
|
|
LC_TELEPHONE = "pl_PL.UTF-8";
|
|
LC_TIME = "pl_PL.UTF-8";
|
|
};
|
|
|
|
# Console keymap
|
|
console.keyMap = "pl2";
|
|
|
|
# User account (pakiety w home-manager)
|
|
users.users.sasza = {
|
|
isNormalUser = true;
|
|
description = "Sasza Stanczew";
|
|
extraGroups = [ "networkmanager" "wheel" ];
|
|
};
|
|
|
|
# State version
|
|
system.stateVersion = "25.11";
|
|
}
|