This commit is contained in:
2025-03-23 08:11:47 -05:00
parent 8eec81c7f4
commit b27c751d62
4 changed files with 185 additions and 215 deletions

View File

@@ -17,13 +17,48 @@
boot.loader.grub.efiSupport = true;
boot.initrd.systemd.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
boot.kernelParams = ["quiet"];
boot.loader.grub.timeoutStyle = "hidden";
services.avahi = {
enable = true;
nssmdns4 = true;
openFirewall = true;
};
boot = {
plymouth = {
enable = true;
theme = "square_hud";
themePackages = with pkgs; [
# By default we would install all themes
(adi1090x-plymouth-themes.override {
selected_themes = [ "square_hud" ];
})
];
};
# Enable "Silent Boot"
consoleLogLevel = 0;
initrd.verbose = false;
kernelParams = [
"quiet"
"splash"
"boot.shell_on_fail"
"loglevel=3"
"rd.systemd.show_status=false"
"rd.udev.log_level=3"
"udev.log_priority=3"
];
# Hide the OS choice for bootloaders.
# It's still possible to open the bootloader list by pressing any key
# It will just not appear on screen unless a key is pressed
loader.timeout = 0;
};
boot.extraModulePackages = with config.boot.kernelPackages; [ hid-tmff2 ];
networking.hostName = "nixos"; # Define your hostname.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
@@ -33,9 +68,9 @@
# Enable networking
networking.networkmanager.enable = true;
hardware.graphics.extraPackages = with pkgs; [
amdvlk
];
hardware.bluetooth.enable = true;
hardware.bluetooth.package = pkgs.bluez;
nixpkgs.config.permittedInsecurePackages = [
"electron-31.7.7"
@@ -64,18 +99,14 @@
# Enable the X11 windowing sytem.
services.xserver.enable = true;
# Enable Plymouth
boot.plymouth = {
enable = true;
};
# Enable the GNOME Desktop Environment.
programs.hyprland.enable = true;
services.desktopManager.plasma6.enable = false;
services.displayManager.sddm.enable = false;
programs.hyprland.enable = false;
services.desktopManager.plasma6.enable = true;
services.displayManager.sddm.enable = true;
services.displayManager.cosmic-greeter.enable = false;
services.desktopManager.cosmic.enable = false;
#security.pam.services.hyprlock = {};
services.desktopManager.cosmic.enable = true;
/*security.pam.services.hyprlock = {};
services.greetd = {
enable = true;
@@ -86,12 +117,18 @@
};
default_session = initial_session;
};
};
};*/
# Steam Deck Gamemode
programs.steam.gamescopeSession.enable = true;
services.getty.autologinUser = "joshuaelm";
environment.loginShellInit = ''[[ "$(tty)" = "/dev/tty1" ]] && ~/NixOS-Config gs.sh'';
# Polkit
security.polkit.enable = true;
services.udisks2.enable = true;
# Configure keymap in X11
@@ -119,6 +156,7 @@
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
wireplumber.enable = true;
# If you want to use JACK applications, uncomment this
#jack.enable = true;
@@ -126,15 +164,50 @@
# no need to redefine it in your config for now)
#media-session.enable = true;
};
hardware.pulseaudio.configFile = pkgs.runCommand "default.pa" {} ''
sed 's/module-udev-detect$/module-udev-detect tsched=0/' \
${pkgs.pulseaudio}/etc/pulse/default.pa > $out
'';
environment.etc."wireplumber/main.lua.d/90-suspend-timeout.lua" = {
text = ''
session.suspend-timeout-seconds = 0
'';
};
services.pipewire.extraConfig.pipewire-pulse."92-low-latency" = {
context.modules = [
{
name = "libpipewire-module-protocol-pulse";
args = {
pulse.min.req = "32/48000";
pulse.default.req = "32/48000";
pulse.max.req = "32/48000";
pulse.min.quantum = "32/48000";
pulse.max.quantum = "32/48000";
};
}
];
stream.properties = {
node.latency = "32/48000";
resample.quality = 1;
};
};
hardware.pulseaudio.extraConfig = ''
.nofail
unload-module module-suspend-on-idle
.fail
'';
# Enable touchpad support (enabled default in most desktopManager).
# services.xserver.libinput.enable = true;
# Define a user account. Don't forget to set a password with passwd.
programs.adb.enable = true;
users.users.joshuaelm = {
isNormalUser = true;
description = "Joshua Elmasri";
extraGroups = [ "networkmanager" "wheel" ];
extraGroups = [ "networkmanager" "wheel" "adbusers" ];
packages = with pkgs; [
# thunderbird
];
@@ -176,11 +249,27 @@
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = with pkgs; [
(pkgs.buildFHSEnv {
name = "fhs";
targetPkgs = pkgs: with pkgs; [
alsa-lib atk cairo cups curl dbus expat file fish fontconfig freetype
fuse glib gtk3 libGL libnotify libxml2 libxslt netcat nspr nss openjdk8
openssl.dev pango pkg-config strace udev vulkan-loader watch wget which
xorg.libX11 xorg.libxcb xorg.libXcomposite xorg.libXcursor
xorg.libXdamage xorg.libXext xorg.libXfixes xorg.libXi xorg.libXrandr
xorg.libXrender xorg.libXScrnSaver xorg.libxshmfence xorg.libXtst
xorg.xcbutilkeysyms zlib fontconfig.lib libuuid xorg.libXft
];
profile = ''export FHS=1'';
runScript = "fish";
})
git
feishin
bibata-cursors
blender
rustc
killall
mangohud
teamspeak3
teamspeak6-client
unetbootin
winetricks
cowsay
pfetch
@@ -192,29 +281,27 @@
pkgs.hyprpanel
cider
gnomeExtensions.open-bar
just
steamtinkerlaunch
grub2
lunar-client
cargo
btop
kdePackages.kalk
inputs.zen-browser.packages."${system}".default
qalculate-qt
kdePackages.kdenlive
blueman
fuse
linux-wallpaperengine
ntfs3g
lapce
prismlauncher
kdePackages.elisa
glaxnimate
librewolf
protonup-qt
mlt
nspr
nss_latest
nssTools
qt5.full
dconf
sublime-music
spacedrive
openjdk
heroic
protontricks
@@ -256,7 +343,12 @@
enable = true;
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
};
};
programs.gamescope = {
enable = true;
capSysNice = true;
};
programs.nix-ld.enable = true;
@@ -272,9 +364,10 @@
# Enable the OpenSSH daemon.
services.openssh.enable = true;
services.openssh.allowSFTP = true;
# Open ports in the firewall.
networking.firewall.allowedTCPPorts = [ 7860 3042 47990 ];
networking.firewall.allowedTCPPorts = [ 7860 3042 47990 5001 ];
networking.firewall.allowedUDPPorts = [ 7860 3042 47990 ];
# Or disable the firewall altogether.
# networking.firewall.enable = false;