Added initial files
This commit is contained in:
commit
0c97384a8d
20 changed files with 874 additions and 0 deletions
22
hosts/desktops/common/boot.nix
Normal file
22
hosts/desktops/common/boot.nix
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
boot = {
|
||||
plymouth.enable = true;
|
||||
initrd.systemd.enable = true;
|
||||
loader.efi.efiSysMountPoint = "/boot/efi";
|
||||
kernelPackages = pkgs.linuxPackages_xanmod_latest; # Xanmod kernel
|
||||
kernelModules = [
|
||||
"i2c-dev" # Required for arduino dev
|
||||
"i2c-piix4" # Required for arduino dev
|
||||
];
|
||||
kernelParams = [
|
||||
"quiet"
|
||||
"splash"
|
||||
"loglevel=3"
|
||||
"udev.log_priority=3"
|
||||
"rd.udev.log_level=3"
|
||||
"rd.systemd.show_status=false"
|
||||
];
|
||||
};
|
||||
}
|
||||
14
hosts/desktops/common/hardware.nix
Normal file
14
hosts/desktops/common/hardware.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
hardware = {
|
||||
bluetooth.enable = true;
|
||||
opengl.driSupport32Bit = true; # For OpenGL games
|
||||
steam-hardware.enable = true; # Allow steam client to manage controllers
|
||||
pulseaudio.enable = false; # Use pipewire instead
|
||||
};
|
||||
|
||||
sound.enable = true;
|
||||
|
||||
security.rtkit.enable = true; # Needed for pipewire to acquire realtime priority
|
||||
}
|
||||
82
hosts/desktops/common/packages.nix
Normal file
82
hosts/desktops/common/packages.nix
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
arduino
|
||||
ark
|
||||
bat
|
||||
bitwarden
|
||||
chatterino2
|
||||
deploy-rs
|
||||
fd
|
||||
filelight
|
||||
firefox-wayland # Until firefox moves to using wayland by default
|
||||
foliate
|
||||
fzf
|
||||
gimp
|
||||
gocryptfs
|
||||
helvum
|
||||
heroic
|
||||
inkscape
|
||||
# itch # Currently using unsafe electron version
|
||||
kate
|
||||
kitty
|
||||
kolourpaint
|
||||
libreoffice-qt
|
||||
logseq
|
||||
mangohud
|
||||
megasync # Soon to be dropped once nas is fully operational
|
||||
mpv
|
||||
neofetch
|
||||
obs-studio
|
||||
obs-studio-plugins.obs-vkcapture
|
||||
prismlauncher-qt5
|
||||
protonup
|
||||
prusa-slicer
|
||||
qbittorrent
|
||||
quickemu
|
||||
retroarchFull
|
||||
rpcs3
|
||||
signal-desktop
|
||||
solvespace
|
||||
steam-run
|
||||
streamlink-twitch-gui-bin
|
||||
tdesktop
|
||||
thunderbird-wayland # Until thunderbird moves to using wayland by default
|
||||
ungoogled-chromium
|
||||
unrar
|
||||
vagrant
|
||||
ventoy-bin
|
||||
virt-manager
|
||||
yakuake
|
||||
# Package overrides
|
||||
(appimage-run.override {
|
||||
extraPkgs = pkgs: [ ];
|
||||
})
|
||||
# Packages from 3rd party overlays
|
||||
nur.repos.baduhai.koi
|
||||
nur.repos.baduhai.emulationstation-de
|
||||
];
|
||||
|
||||
programs = {
|
||||
steam.enable = true;
|
||||
dconf.enable = true;
|
||||
kdeconnect.enable = true;
|
||||
partition-manager.enable = true;
|
||||
gnupg.agent = {
|
||||
enable = true;
|
||||
enableSSHSupport = true;
|
||||
pinentryFlavor = "qt";
|
||||
};
|
||||
};
|
||||
|
||||
fonts = {
|
||||
fontDir.enable = true;
|
||||
fontconfig.enable = true;
|
||||
fonts = with pkgs; [
|
||||
inter
|
||||
roboto
|
||||
(nerdfonts.override { fonts = [ "Hack" ]; })
|
||||
];
|
||||
};
|
||||
}
|
||||
40
hosts/desktops/common/services.nix
Normal file
40
hosts/desktops/common/services.nix
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
services = {
|
||||
printing.enable = true;
|
||||
pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
jack.enable = true;
|
||||
wireplumber.enable = true;
|
||||
};
|
||||
xserver = {
|
||||
enable = true;
|
||||
layout = "us";
|
||||
xkbVariant = "altgr-intl";
|
||||
excludePackages = ( with pkgs; [ xterm ]);
|
||||
desktopManager.plasma5 = {
|
||||
enable = true;
|
||||
excludePackages = ( with pkgs.plasma5Packages; [ elisa oxygen khelpcenter ]);
|
||||
};
|
||||
displayManager = {
|
||||
defaultSession = "plasmawayland";
|
||||
sddm = {
|
||||
enable = true;
|
||||
autoNumlock = true;
|
||||
settings = {
|
||||
Theme = {
|
||||
CursorTheme = "breeze_cursors";
|
||||
};
|
||||
X11 = {
|
||||
UserAuthFile = ".local/share/sddm/Xauthority";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
16
hosts/desktops/common/users.nix
Normal file
16
hosts/desktops/common/users.nix
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
environment.sessionVariables = rec {
|
||||
KDEHOME = "$XDG_CONFIG_HOME/kde4"; # Stops kde from placing a .kde4 folder in the home dir
|
||||
};
|
||||
|
||||
users.users.user = {
|
||||
description = "William";
|
||||
extraGroups = [
|
||||
"libvirtd"
|
||||
"uaccess" # Needed for HID dev
|
||||
"dialout" # Needed for arduino dev
|
||||
];
|
||||
};
|
||||
}
|
||||
11
hosts/desktops/common/virtualisation.nix
Normal file
11
hosts/desktops/common/virtualisation.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
virtualisation = {
|
||||
libvirtd.enable = true;
|
||||
podman = {
|
||||
enable = true;
|
||||
dockerCompat = true; # Baisically aliases docker to podman
|
||||
};
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue