Compare commits
3 Commits
4b6290c3c7
...
91910ec46e
Author | SHA1 | Date | |
---|---|---|---|
91910ec46e | |||
d2426b4291 | |||
7c1113cd09 |
64
flake.lock
64
flake.lock
@ -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": {
|
||||
|
@ -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;
|
||||
};
|
||||
});
|
||||
}
|
||||
|
@ -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 = {
|
||||
|
@ -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"
|
||||
|
@ -38,6 +38,8 @@ in inputs.nixpkgs.lib.nixosSystem {
|
||||
# Overlays
|
||||
(util.mkOverlayFromInput "stable" inputs.stable)
|
||||
(util.mkOverlayFromInput "unstable" inputs.nixpkgs)
|
||||
|
||||
|
||||
{
|
||||
nixpkgs.overlays = [
|
||||
nur.overlay
|
||||
|
@ -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 = [
|
||||
{
|
||||
|
@ -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";
|
||||
|
@ -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";
|
||||
|
@ -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";
|
||||
|
@ -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 ];
|
||||
|
@ -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;
|
||||
}
|
Loading…
Reference in New Issue
Block a user