Files
nixos-configv3/global/default.nix
2025-12-07 01:12:57 -05:00

116 lines
2.7 KiB
Nix

# This is for global config I DEFINITELY want on all machines, this should only include basic utilities and be relatively small.
# There is no order for where things are in this, it's a little messy.
{pkgs, ...}:
{
# 🇺🇸
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "en_US.UTF-8";
LC_IDENTIFICATION = "en_US.UTF-8";
LC_MEASUREMENT = "en_US.UTF-8";
LC_MONETARY = "en_US.UTF-8";
LC_NAME = "en_US.UTF-8";
LC_NUMERIC = "en_US.UTF-8";
LC_PAPER = "en_US.UTF-8";
LC_TELEPHONE = "en_US.UTF-8";
LC_TIME = "en_US.UTF-8";
};
# TODO: Look and find out if there's a better way to configure printers, my Brother needs to be reconnected every boot :/
services.printing.enable = true;
services.avahi = {
enable = true;
nssmdns4 = true;
openFirewall = true;
publish = {
enable = true;
userServices = true;
};
};
services.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
jack.enable = true;
};
programs.adb.enable = true; # Bit heavy but you never know when you might need it...
users.users.laythe = {
isNormalUser = true;
description = "laythe";
extraGroups = [ "networkmanager" "wheel" "docker" "adbusers" "jackaudio" "podman" ];
#To make podman work
subUidRanges = [{ startUid = 100000; count = 65536; }];
subGidRanges = [{ startGid = 100000; count = 65536; }];
};
programs.appimage = {
enable = true;
binfmt = true;
package = pkgs.appimage-run.override {
extraPkgs = pkgs: [
];
};
};
services.flatpak.enable = true;
programs.nix-ld.enable = true;
nixpkgs.config.allowUnfree = true;
nix.optimise.automatic = true;
nix.gc = {
automatic = true;
dates = "daily"; # Maybe the solution is to buy more storage for my devices :p
options = "--delete-older-than 3d";
};
environment.systemPackages = with pkgs; [
git
wget
wineWowPackages.stable # Heavy but really annoying to not have when you need it
winetricks
gparted
unrar
electrum
qpwgraph
libimobiledevice
ifuse
neofetch
gimp # Despite the fact it falls under creative an image editor is too important to leave out.
zip
xz
unzip
p7zip
dnsutils
file
which
tree
gnused
gnutar
gawk
zstd
lsof
sysstat
lm_sensors
ethtool
pciutils # lspci
usbutils # lsusb
ffmpeg-full
];
services.usbmuxd = {
enable = true;
package = pkgs.usbmuxd2;
};
nix.settings.experimental-features = [ "nix-command" "flakes" ];
}