All checks were successful
Check Flake / check-flake (push) Successful in 17m43s
110 lines
3.0 KiB
Nix
110 lines
3.0 KiB
Nix
{ config, pkgs, lib, ... }:
|
|
|
|
{
|
|
imports = [
|
|
./hardware-configuration.nix
|
|
];
|
|
|
|
de.enable = true;
|
|
|
|
# Login DE Option: Steam
|
|
programs.steam.gamescopeSession.enable = true;
|
|
# programs.gamescope.capSysNice = true;
|
|
|
|
# Login DE Option: Kodi
|
|
services.xserver.desktopManager.kodi.enable = true;
|
|
services.xserver.desktopManager.kodi.package =
|
|
(
|
|
pkgs.kodi.passthru.withPackages (kodiPackages: with kodiPackages; [
|
|
jellyfin
|
|
joystick
|
|
])
|
|
);
|
|
services.mount-samba.enable = true;
|
|
|
|
# Login DE Option: RetroArch
|
|
services.xserver.desktopManager.retroarch.enable = true;
|
|
services.xserver.desktopManager.retroarch.package = pkgs.retroarchFull;
|
|
|
|
# wireless xbox controller support
|
|
hardware.xone.enable = true;
|
|
boot.kernelModules = [ "xone-wired" "xone-dongle" ];
|
|
hardware.enableRedistributableFirmware = true;
|
|
hardware.enableAllFirmware = true;
|
|
|
|
# ROCm
|
|
hardware.graphics.extraPackages = with pkgs; [
|
|
rocmPackages.clr.icd
|
|
rocmPackages.clr
|
|
];
|
|
systemd.tmpfiles.rules = [
|
|
"L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}"
|
|
];
|
|
|
|
# System wide barrier instance
|
|
# systemd.services.barrier-sddm = {
|
|
# description = "Barrier mouse/keyboard share";
|
|
# requires = [ "display-manager.service" ];
|
|
# after = [ "network.target" "display-manager.service" ];
|
|
# wantedBy = [ "multi-user.target" ];
|
|
# serviceConfig = {
|
|
# Restart = "always";
|
|
# RestartSec = 10;
|
|
# # todo use user/group
|
|
# };
|
|
# path = with pkgs; [ barrier doas ];
|
|
# script = ''
|
|
# # Wait for file to show up. "display-manager.service" finishes a bit too soon
|
|
# while ! [ -e /run/sddm/* ]; do sleep 1; done;
|
|
# export XAUTHORITY=$(ls /run/sddm/*)
|
|
# # Disable crypto is fine because tailscale is E2E encrypting better than barrier could anyway
|
|
# barrierc -f --disable-crypto --name zoidberg ray.koi-bebop.ts.net
|
|
# '';
|
|
# };
|
|
|
|
# Login into X11 plasma so barrier works well
|
|
services.displayManager.defaultSession = "plasma";
|
|
|
|
users.users.cris = {
|
|
isNormalUser = true;
|
|
hashedPassword = "$y$j9T$LMGwHVauFWAcAyWSSmcuS/$BQpDyjDHZZbvj54.ijvNb03tr7IgX9wcjYCuCxjSqf6";
|
|
uid = 1001;
|
|
packages = with pkgs; [
|
|
maestral
|
|
maestral-gui
|
|
] ++ config.users.users.googlebot.packages;
|
|
};
|
|
|
|
# Dr. John A. Zoidberg
|
|
users.users.john = {
|
|
isNormalUser = true;
|
|
inherit (config.users.users.googlebot) hashedPassword packages;
|
|
uid = 1002;
|
|
};
|
|
|
|
# Auto login into Plasma in john zoidberg account
|
|
services.displayManager.sddm.settings = {
|
|
Autologin = {
|
|
Session = "plasma";
|
|
User = "john";
|
|
};
|
|
};
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
jellyfin-media-player
|
|
config.services.xserver.desktopManager.kodi.package
|
|
spotify
|
|
retroarchFull
|
|
];
|
|
|
|
# Command and Conquer Ports
|
|
networking.firewall.allowedUDPPorts = [ 4321 27900 ];
|
|
networking.firewall.allowedTCPPorts = [ 6667 28910 29900 29920 ];
|
|
|
|
nixpkgs.config.rocmSupport = true;
|
|
services.ollama = {
|
|
enable = true;
|
|
acceleration = "rocm";
|
|
};
|
|
}
|