Compare commits

...

3 Commits

11 changed files with 100 additions and 170 deletions

View File

@ -25,11 +25,11 @@
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
"lastModified": 1689700121,
"narHash": "sha256-YoKqbhyIQUCF7hGQNABMvcSfc9IgIFyxa6ZRInD5W+Q=",
"lastModified": 1693879203,
"narHash": "sha256-0CGMa3MxeG3YsVetUtxg6eZumQIe8FJ+WHVfR2ko9zM=",
"owner": "nix-community",
"repo": "emacs-overlay",
"rev": "bb06a68dba7b316472dab0a7255a3ea21be45812",
"rev": "3adaef3b1bebdc244a03ee19f705f5a3190a33d9",
"type": "github"
},
"original": {
@ -64,11 +64,11 @@
"systems": "systems"
},
"locked": {
"lastModified": 1689068808,
"narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=",
"lastModified": 1692799911,
"narHash": "sha256-3eihraek4qL744EvQXsK1Ha6C3CR7nnT8X2qWap4RNk=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4",
"rev": "f9e7cf818399d17d347f847525c5a5a8032e4e44",
"type": "github"
},
"original": {
@ -82,11 +82,11 @@
"systems": "systems_2"
},
"locked": {
"lastModified": 1689068808,
"narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=",
"lastModified": 1692799911,
"narHash": "sha256-3eihraek4qL744EvQXsK1Ha6C3CR7nnT8X2qWap4RNk=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4",
"rev": "f9e7cf818399d17d347f847525c5a5a8032e4e44",
"type": "github"
},
"original": {
@ -175,11 +175,11 @@
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1689495092,
"narHash": "sha256-yZu2j5FpLZEPhJQQutMCPTxa1VMigLPabLYvLTq6ASM=",
"lastModified": 1693859358,
"narHash": "sha256-r3Pak/ao3p8weTzR+Ry3qQrfRsmSOwWW5sAe73mrYKs=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "2f84579a70b8c74e5ebb37299a0c3ba279f09382",
"rev": "886ea1d213efd1082f419d066e89ef37635dc970",
"type": "github"
},
"original": {
@ -387,11 +387,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1689320556,
"narHash": "sha256-vODUkZLWFVCvo1KPK3dC2CbXjxa9antEn5ozwlcTr48=",
"lastModified": 1693718952,
"narHash": "sha256-+nGdJlgTk0MPN7NygopipmyylVuAVi7OItIwTlwtGnw=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "d4ea64f2063820120c05f6ba93ee02e6d4671d6b",
"rev": "793de77d9f83418b428e8ba70d1e42c6507d0d35",
"type": "github"
},
"original": {
@ -419,11 +419,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1689534811,
"narHash": "sha256-jnSUdzD/414d94plCyNlvTJJtiTogTep6t7ZgIKIHiE=",
"lastModified": 1693663421,
"narHash": "sha256-ImMIlWE/idjcZAfxKK8sQA7A1Gi/O58u5/CJA+mxvl8=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "6cee3b5893090b0f5f0a06b4cf42ca4e60e5d222",
"rev": "e56990880811a451abd32515698c712788be5720",
"type": "github"
},
"original": {
@ -435,11 +435,11 @@
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1689605451,
"narHash": "sha256-u2qp2k9V1smCfk6rdUcgMKvBj3G9jVvaPHyeXinjN9E=",
"lastModified": 1693771906,
"narHash": "sha256-32EnPCaVjOiEERZ+o/2Ir7JH9pkfwJZJ27SKHNvt4yk=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "53657afe29748b3e462f1f892287b7e254c26d77",
"rev": "da5adce0ffaff10f6d0fee72a02a5ed9d01b52fc",
"type": "github"
},
"original": {
@ -467,15 +467,15 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1689373857,
"narHash": "sha256-mtBksyvhhT98Zsm9tYHuMKuLwUKDwv+BGTl6K5nOGhY=",
"owner": "nixos",
"lastModified": 1693565476,
"narHash": "sha256-ya00zHt7YbPo3ve/wNZ/6nts61xt7wK/APa6aZAfey0=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "dfdbcc428f365071f0ca3888f6ec8c25c3792885",
"rev": "aa8aa7e2ea35ce655297e8322dc82bf77a31d04b",
"type": "github"
},
"original": {
"owner": "nixos",
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
@ -483,11 +483,11 @@
},
"nixpkgs_3": {
"locked": {
"lastModified": 1689534811,
"narHash": "sha256-jnSUdzD/414d94plCyNlvTJJtiTogTep6t7ZgIKIHiE=",
"lastModified": 1693663421,
"narHash": "sha256-ImMIlWE/idjcZAfxKK8sQA7A1Gi/O58u5/CJA+mxvl8=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "6cee3b5893090b0f5f0a06b4cf42ca4e60e5d222",
"rev": "e56990880811a451abd32515698c712788be5720",
"type": "github"
},
"original": {
@ -589,11 +589,11 @@
},
"nur": {
"locked": {
"lastModified": 1689705562,
"narHash": "sha256-5++xa1AWV9tl8LWGdKzVaRNcdjM5Svhyv4Bjhfwk3B8=",
"lastModified": 1693907142,
"narHash": "sha256-U3yzshaxSUAC6Hy5xGmlX1TySHoWjH++Y2cC9ujEmZc=",
"owner": "nix-community",
"repo": "nur",
"rev": "092ea7443f334c362cc5429612846f6193a7de11",
"rev": "283964d2452632c9b0ccc8eff08d242a073b022f",
"type": "github"
},
"original": {

View File

@ -53,10 +53,12 @@
overlays = [
self.overlay
(import ./overlays/sandbox.nix)
];
};
in {
inherit (pkgs) wayqt dfl-ipc dfl-applications dfl-utils qtgreet xwaylandvideobridge obs-cli rgb_keyboard;
inherit (pkgs) wayqt dfl-ipc dfl-applications dfl-utils qtgreet xwaylandvideobridge obs-cli rgb_keyboard prismlauncher-wrapped anime4k;
};
});
}

View File

@ -36,6 +36,7 @@
thunderbird
anki
gimp
xwaylandvideobridge
#psst
#lapce
@ -50,10 +51,10 @@
};
sway.enable = false;
alacritty.enable = true;
emacs.enable = true;
#emacs.enable = true;
firefox.enable = true;
git.enable = true;
gnome-terminal.enable = true;
#gnome-terminal.enable = true;
tmux.enable = true;
waybar = {
enable = true;
@ -105,30 +106,34 @@
};
virtualisation = {
podman = {
docker = {
enable = true;
dockerCompat = true;
storageDriver = "btrfs";
};
# docker = {
# enable = true;
# storageDriver = "btrfs";
# };
};
boot = let
kernel = pkgs.linuxPackages_zen;
kernel = pkgs.linuxPackages_xanmod_latest;
in {
extraModprobeConfig = ''
options kvm_amd nested=1
options vfio-pci ids=1002:67df,1002:aaf0
'';
initrd = {
availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "sd_mod" "amdgpu" "vendor-reset" ];
availableKernelModules = [
"xhci_pci"
"ahci"
"usbhid"
"sd_mod"
"amdgpu"
"vendor-reset"
"winesync"
];
kernelModules = [
"amdgpu" # GPU (duh)
"kvm-amd" /*"vfio_virqfd"*/ "vfio_pci" "vfio_iommu_type1" "vfio" # Virt
"uinput" # key-mapper
"vendor-reset"
"winesync"
];
};
kernelParams = [
@ -146,11 +151,13 @@
"mitigations=off"
"rhgb"
# Enable ZSwap
"zswap.enabled=1"
#"zswap.enabled=1"
# Enable Apparmor
"lsm=landlock,lockdown,yama,integrity,apparmor,bpf"
# Prevent sequential probing
"libahci.ignore_sss=1"
# Make the system less ready to swap
"sysctl.vm.swappiness=0"
];
kernel.sysctl = {
# League of Legends under Linux
@ -160,11 +167,12 @@
};
extraModulePackages = [ kernel.vendor-reset ];
# NOTE: A regression appears to have happend between 5.10 and 5.12
# which leads to the RX590 to have the fence fallback timer on
# sdma0 time out (whatever this means). Maybe bisect?
kernelPackages = kernel;
binfmt = {
emulatedSystems = [ "aarch64-linux" ];
registrations.aarch64-linux.fixBinary = true;
};
};
services = {
ratbagd.enable = true;
@ -190,6 +198,11 @@
motherboard = "amd";
};
};
system76-scheduler = {
enable = false;
useStockConfig = true;
};
};
programs = {
cdemu = {

View File

@ -244,7 +244,10 @@ in {
};
# Don't wait for a network connection
systemd.services.NetworkManager-wait-online.enable = false;
systemd = {
services.NetworkManager-wait-online.enable = false;
coredump.enable = false;
};
security.sudo.extraConfig = ''
Defaults env_keep += "NIXOS_CONFIG"

View File

@ -38,6 +38,8 @@ in inputs.nixpkgs.lib.nixosSystem {
# Overlays
(util.mkOverlayFromInput "stable" inputs.stable)
(util.mkOverlayFromInput "unstable" inputs.nixpkgs)
{
nixpkgs.overlays = [
nur.overlay

View File

@ -30,7 +30,7 @@ in {
dynamic_title = true;
decorations = "full";
startup_mode = "Windowed";
opacity = 0.7;
#opacity = 0.7;
};
scrolling = {
@ -48,7 +48,6 @@ in {
x = 0;
y = 0;
};
use_thin_strokes = true;
};
debug = {
render_timer = false;
@ -111,7 +110,6 @@ in {
live_config_reload = true;
enable_experimental_conpty_backend = false;
alt_send_esc = true;
key_bindings = [
{

View File

@ -37,13 +37,16 @@ in {
# Gameplay clip editing
kdenlive
# Better experience
gamescope
# Performance
corectrl
];
programs.gamescope = {
enable = true;
capSysNice = true;
args = ["--rt"];
};
# security.wrappers.gamescope = {
# owner = "alexander";
# group = "alexander";

View File

@ -1,10 +1,10 @@
{ config, lib, pkgs, ... }:
let
mkAnime4kShader = shader: "${pkgs.anime4k}/usr/share/shaders/${shader}";
#mkAnime4kShader = shader: "${pkgs.anime4k}/usr/share/shaders/${shader}";
mkDefaultShader = shader: "${pkgs.mpv-shader-pack}/usr/share/shaders/${shader}";
makeMpvProfile = { shader, gpuContext ? "waylandvk", additional ? {} }: {
glsl-shaders = shader;
makeMpvProfile = { shader ? null, gpuContext ? "waylandvk", additional ? {} }: {
glsl-shaders = lib.mkIf (shader != null) shader;
scale = "ewa_lanczossharp";
cscale = "ewa_lanczossharp";
gpu-context = gpuContext;
@ -41,13 +41,13 @@ in {
defaultProfiles = [ "anime" ];
profiles = {
anime = (makeMpvProfile {
shader = mkAnime4kShader "Anime4K_Upscale_Denoise_CNN_x2_VL.glsl";
#shader = mkAnime4kShader "Anime4K_Upscale_Denoise_CNN_x2_VL.glsl";
additional = {
fullscreen = "";
};
});
anime-denoise = (makeMpvProfile {
shader = mkAnime4kShader "Anime4K_Upscale_Denoise_CNN_x2_VL.glsl";
#shader = mkAnime4kShader "Anime4K_Upscale_Denoise_CNN_x2_VL.glsl";
});
non-anime = (makeMpvProfile {
shader = mkDefaultShader "FSRCNNX_x2_8-0-4-1.glsl";

View File

@ -26,17 +26,22 @@ in {
enableDesktopFile = true;
};
# prismlauncher-wrapped = wrapInSandbox {
# name = "prismlauncher";
# binary = "${prev.prismlauncher}/bin/prismlauncher";
# launchScriptName = "prismlauncher-wrapped";
# mountInHome = [".local/share/PrismLauncher"];
# additionalMounts = [
# "/etc/profile"
# ];
# additionalBlacklist = [ "/mnt" ];
# chdirTo = "/home/$USER";
# };
prismlauncher-wrapped = wrapInSandbox {
name = "prismlauncher";
binary = let
script = prev.writeShellScript "prismlauncher-zink.sh" ''
export MESA_LOADER_DRIVER_OVERRIDE=zink
${prev.prismlauncher}/bin/prismlauncher
'';
in "${prev.prismlauncher}/bin/prismlauncher";
launchScriptName = "prismlauncher-wrapped";
mountInHome = [".local/share/PrismLauncher"];
additionalMounts = [
"/etc/profile"
];
additionalBlacklist = [ "/mnt" ];
chdirTo = "/home/$USER";
};
steam-wrapped = wrapInSandbox {
name = "steam-wrapped";

View File

@ -14,9 +14,9 @@ stdenv.mkDerivation rec {
src = fetchFromGitLab {
owner = "davidedmundson";
repo = "xwaylandvideobridge";
rev = "b876b5f3ee5cc810c99b08e8f0ebb29553e45e47";
rev = "b9e0c53570f55f4e8289f72ba78f3945e27e1a1a";
domain = "invent.kde.org";
sha256 = "sha256-gfQkOIZegxdFQ9IV2Qp/lLRtfI5/g6bDD3XRBdLh4q0=";
sha256 = "1ypg2c26r5fy9lr8shif5vqcp06yf7mqqj2ps5g00s7s3ykryxdn";
};
buildInputs = [ qtbase qtx11extras plasma-framework xorg.xcbproto kpipewire cmake pkg-config ];

View File

@ -1,96 +0,0 @@
# From https://github.com/Jovian-Experiments/Jovian-NixOS/blob/d27526e7917671ad3a64f823f4b95b761f96807d/pkgs/gamescope/default.nix
{ stdenv
, fetchFromGitHub
, meson
, pkg-config
, cmake
, ninja
, xorg
, libdrm
, vulkan-loader
, wayland
, wayland-protocols
, libxkbcommon
, libcap
, SDL2
, pipewire
, mesa
, udev
, pixman
, libinput
, libseat
, xwayland
, glslang
, stb
, wlroots
, libliftoff
}:
let
in
stdenv.mkDerivation {
pname = "gamescope";
version = "3.11.28-beta4";
src = fetchFromGitHub {
owner = "Plagman";
repo = "gamescope";
rev = "refs/tags/3.11.28-beta4";
hash = "sha256-3L3bQIPPfScvtN1dduh10dQu/AuTmD4dHNp3JjBIBLA=";
};
buildInputs = [
xorg.libX11
xorg.libXdamage
xorg.libXcomposite
xorg.libXrender
xorg.libXext
xorg.libXxf86vm
xorg.libXtst
xorg.libXres
libdrm
vulkan-loader
wayland
wayland-protocols
libxkbcommon
libcap
SDL2
pipewire
mesa
udev
pixman
libinput
libseat
xwayland
xorg.xcbutilwm
xorg.xcbutilerrors
glslang
xorg.libXi
];
prePatch = ''
echo ":: Copying stb"
cp -vr "${stb.src}" subprojects/stb
chmod -R +w subprojects/stb
cp "subprojects/packagefiles/stb/meson.build" "subprojects/stb/"
echo ":: Copying wlroots"
rmdir subprojects/wlroots
cp -vr "${wlroots.src}" subprojects/wlroots
chmod -R +w subprojects/wlroots
echo ":: Copying libliftoff"
rmdir subprojects/libliftoff
cp -vr "${libliftoff.src}" subprojects/libliftoff
chmod -R +w subprojects/libliftoff
'';
nativeBuildInputs = [
cmake
meson
pkg-config
ninja
];
dontUseCmakeConfigure = true;
}