Files
nix-flake/global-default.nix
T
greyweather 0321fa903f automatic overlay for ./packages directory
also gamescope added system-wide and in flatpak for steam
2026-07-28 03:03:45 +01:00

103 lines
2.3 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
lib,
config,
pkgs,
specialArgs,
...
}: let
packageFileNames = builtins.attrNames (builtins.readDir ./packages);
packageNames = map (x: lib.removeSuffix ".nix" x) packageFileNames;
packagesOverlay = (final: prev: lib.genAttrs packageNames (name: (prev.pkgs.callPackage ./packages/${name}.nix { })));
in {
imports = [
./hosts/${specialArgs.hostname}/hardware-configuration.nix
./modules/nh.nix
./modules/home-manager.nix
];
nixpkgs.overlays = [
packagesOverlay
];
networking.hostName = specialArgs.hostname;
nix.settings.experimental-features = [
"nix-command"
"flakes"
];
nix.gc = {
automatic = true;
persistent = true;
dates = "Sun 05:00";
};
boot.loader.efi.canTouchEfiVariables = true;
networking.networkmanager.enable = true;
time.timeZone = "Europe/London";
i18n.defaultLocale = "en_GB.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "en_GB.UTF-8";
LC_IDENTIFICATION = "en_GB.UTF-8";
LC_MEASUREMENT = "en_GB.UTF-8";
LC_MONETARY = "en_GB.UTF-8";
LC_NAME = "en_GB.UTF-8";
LC_NUMERIC = "en_GB.UTF-8";
LC_PAPER = "en_GB.UTF-8";
LC_TELEPHONE = "en_GB.UTF-8";
LC_TIME = "en_GB.UTF-8";
};
services.xserver.xkb = {
layout = "gb";
variant = "";
};
console.keyMap = "uk";
users.users."grey" = {
isNormalUser = true;
description = "grey";
extraGroups = [ "networkmanager" "wheel" ];
};
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
git
fzf
jq
busybox
ethtool
wayland-utils
mesa-demos
vulkan-tools
];
programs.nano = {
enable = true;
nanorc = ''
set nowrap
set tabstospaces
set tabsize 2
'';
};
hardware.bluetooth = {
enable = true;
powerOnBoot = false;
};
programs.gnupg.agent = {
enable = true;
};
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. It‘s perfectly fine and recommended to leave
# this value at the release version of the first install of this system.
# Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = specialArgs.stateVersion;
}