Compare commits
4 commits
85553a4a9c
...
15e00efe3e
Author | SHA1 | Date | |
---|---|---|---|
15e00efe3e | |||
e810827331 | |||
4004a048f6 | |||
1ac8bc985c |
8 changed files with 72 additions and 20 deletions
|
@ -45,6 +45,7 @@
|
||||||
"spotify"
|
"spotify"
|
||||||
"steam" "steam-original" "steam-run"
|
"steam" "steam-original" "steam-run"
|
||||||
"vista-fonts"
|
"vista-fonts"
|
||||||
|
"nvidia-persistenced" # Docker
|
||||||
];
|
];
|
||||||
in
|
in
|
||||||
utils.lib.mkFlake {
|
utils.lib.mkFlake {
|
||||||
|
|
|
@ -6,6 +6,8 @@
|
||||||
];
|
];
|
||||||
|
|
||||||
sisyphus = {
|
sisyphus = {
|
||||||
|
desktop.sway.enable = true;
|
||||||
|
|
||||||
hardware.nvidia = {
|
hardware.nvidia = {
|
||||||
enable = true;
|
enable = true;
|
||||||
model = "Quadro T2000";
|
model = "Quadro T2000";
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./gnome
|
./gnome
|
||||||
|
./hyprland
|
||||||
./plasma
|
./plasma
|
||||||
./sway
|
./sway
|
||||||
];
|
];
|
||||||
|
|
15
nixos/modules/desktop/hyprland/default.nix
Normal file
15
nixos/modules/desktop/hyprland/default.nix
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
{ config, lib, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.sisyphus.desktop.hyprland;
|
||||||
|
in {
|
||||||
|
options.sisyphus.desktop.hyprland.enable = lib.mkEnableOption "Hyprland";
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
programs.hyprland = {
|
||||||
|
enable = true;
|
||||||
|
xwayland.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
|
@ -38,6 +38,26 @@ let
|
||||||
export XDG_DATA_DIRS=${datadir}:$XDG_DATA_DIRS
|
export XDG_DATA_DIRS=${datadir}:$XDG_DATA_DIRS
|
||||||
gnome_schema=org.gnome.desktop.interface
|
gnome_schema=org.gnome.desktop.interface
|
||||||
# gsettings set $gnome_schema gtk-theme 'Dracula'
|
# gsettings set $gnome_schema gtk-theme 'Dracula'
|
||||||
|
|
||||||
|
# https://github.com/crispyricepc/sway-nvidia/blob/2101a18698151a61266740f1297158119bf660ac/wlroots-env-nvidia.sh
|
||||||
|
# Hardware cursors not yet working on wlroots
|
||||||
|
export WLR_NO_HARDWARE_CURSORS=1
|
||||||
|
# Set wlroots renderer to Vulkan to avoid flickering
|
||||||
|
export WLR_RENDERER=vulkan
|
||||||
|
# General wayland environment variables
|
||||||
|
export XDG_SESSION_TYPE=wayland
|
||||||
|
export QT_QPA_PLATFORM=wayland
|
||||||
|
export QT_WAYLAND_DISABLE_WINDOWDECORATION=1
|
||||||
|
# Firefox wayland environment variable
|
||||||
|
export MOZ_ENABLE_WAYLAND=1
|
||||||
|
export MOZ_USE_XINPUT2=1
|
||||||
|
# OpenGL Variables
|
||||||
|
export GBM_BACKEND=nvidia-drm
|
||||||
|
export __GL_GSYNC_ALLOWED=0
|
||||||
|
export __GL_VRR_ALLOWED=0
|
||||||
|
export __GLX_VENDOR_LIBRARY_NAME=nvidia
|
||||||
|
# Xwayland compatibility
|
||||||
|
export XWAYLAND_NO_GLAMOR=1
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
in {
|
in {
|
||||||
|
@ -74,7 +94,7 @@ in {
|
||||||
SCRIPT_DIR = ../../../../scripts;
|
SCRIPT_DIR = ../../../../scripts;
|
||||||
};
|
};
|
||||||
|
|
||||||
fonts.fonts = with pkgs; [
|
fonts.packages = with pkgs; [
|
||||||
dejavu_fonts
|
dejavu_fonts
|
||||||
font-awesome
|
font-awesome
|
||||||
noto-fonts
|
noto-fonts
|
||||||
|
@ -100,14 +120,17 @@ in {
|
||||||
|
|
||||||
power-profiles-daemon.enable = true;
|
power-profiles-daemon.enable = true;
|
||||||
|
|
||||||
xserver.displayManager.session = [{
|
xserver = {
|
||||||
manage = "window";
|
displayManager.session = [{
|
||||||
name = "Sway";
|
manage = "window";
|
||||||
start = ''
|
name = "Sway";
|
||||||
${pkgs.sway}/bin/sway --unsupported-gpu &
|
start = ''
|
||||||
waitPID=$!
|
${pkgs.sway}/bin/sway --unsupported-gpu &
|
||||||
'';
|
waitPID=$!
|
||||||
}];
|
'';
|
||||||
|
}];
|
||||||
|
videoDrivers = [ "nouveau" ];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
xdg.portal = {
|
xdg.portal = {
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
let
|
let
|
||||||
cfg = config.sisyphus.hardware.nvidia;
|
cfg = config.sisyphus.hardware.nvidia;
|
||||||
|
|
||||||
|
# The graphics cards for which to do offloading
|
||||||
do-offloading = builtins.elem cfg.model [ "Quadro T2000" ];
|
do-offloading = builtins.elem cfg.model [ "Quadro T2000" ];
|
||||||
nvidia-offload = pkgs.writeShellScriptBin "nvidia-offload" ''
|
nvidia-offload = pkgs.writeShellScriptBin "nvidia-offload" ''
|
||||||
export __NV_PRIME_RENDER_OFFLOAD=1
|
export __NV_PRIME_RENDER_OFFLOAD=1
|
||||||
|
@ -24,8 +25,17 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
services.xserver.videoDrivers = [ "nvidia" ];
|
# boot = {
|
||||||
|
# extraModprobeConfig = "options nvidia-drm modeset=1";
|
||||||
|
#
|
||||||
|
# initrd.kernelModules = [
|
||||||
|
# "nvidia"
|
||||||
|
# "nvidia_modeset"
|
||||||
|
# "nvidia_uvm"
|
||||||
|
# "nvidia_drm"
|
||||||
|
# ];
|
||||||
|
# };
|
||||||
|
|
||||||
hardware = {
|
hardware = {
|
||||||
opengl = {
|
opengl = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -33,7 +43,7 @@ in {
|
||||||
driSupport32Bit = true;
|
driSupport32Bit = true;
|
||||||
};
|
};
|
||||||
nvidia = {
|
nvidia = {
|
||||||
open = true;
|
open = false;
|
||||||
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
||||||
modesetting.enable = true;
|
modesetting.enable = true;
|
||||||
nvidiaSettings = cfg.gui-settings;
|
nvidiaSettings = cfg.gui-settings;
|
||||||
|
@ -42,6 +52,9 @@ in {
|
||||||
finegrained = do-offloading;
|
finegrained = do-offloading;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Avoid flickering
|
||||||
|
forceFullCompositionPipeline = true;
|
||||||
|
|
||||||
prime = lib.mkMerge [
|
prime = lib.mkMerge [
|
||||||
(lib.mkIf do-offloading {
|
(lib.mkIf do-offloading {
|
||||||
offload = {
|
offload = {
|
||||||
|
|
|
@ -61,9 +61,6 @@ in {
|
||||||
icosystem # Personal icon theme
|
icosystem # Personal icon theme
|
||||||
spotify-adblock
|
spotify-adblock
|
||||||
]) ++ (with pkgs-unstable; [
|
]) ++ (with pkgs-unstable; [
|
||||||
# logseq
|
|
||||||
# obsidian
|
|
||||||
|
|
||||||
brave
|
brave
|
||||||
chafa # Terminal image viewer
|
chafa # Terminal image viewer
|
||||||
duf # Df alternative
|
duf # Df alternative
|
||||||
|
@ -72,6 +69,7 @@ in {
|
||||||
jellyfin-media-player
|
jellyfin-media-player
|
||||||
kitty
|
kitty
|
||||||
libreoffice-fresh
|
libreoffice-fresh
|
||||||
|
logseq
|
||||||
mpv
|
mpv
|
||||||
nextcloud-client
|
nextcloud-client
|
||||||
nsxiv # Lightweight image viewer
|
nsxiv # Lightweight image viewer
|
||||||
|
@ -96,9 +94,7 @@ in {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
pointerCursor = {
|
pointerCursor = {
|
||||||
package = cursor.package;
|
inherit (cursor) package name size;
|
||||||
name = cursor.name;
|
|
||||||
size = cursor.size;
|
|
||||||
gtk.enable = true;
|
gtk.enable = true;
|
||||||
x11.enable = true;
|
x11.enable = true;
|
||||||
};
|
};
|
||||||
|
|
|
@ -15,8 +15,9 @@ set {
|
||||||
$scrollUp button4
|
$scrollUp button4
|
||||||
$scrollDown button5
|
$scrollDown button5
|
||||||
|
|
||||||
$term kitty || alacritty || foot
|
# $term kitty || alacritty || foot
|
||||||
$menu j4-dmenu-desktop --dmenu "rofi -dmenu -i"
|
$term kitty
|
||||||
|
$menu j4-dmenu-desktop --dmenu "rofi -dmenu -i" --usage-log="/home/tdpeuter/.local/state/dmenu.log"
|
||||||
# TODO Find better location and better way to reference this.
|
# TODO Find better location and better way to reference this.
|
||||||
$window_switcher /home/tdpeuter/projects/fzf-jump/new.sh
|
$window_switcher /home/tdpeuter/projects/fzf-jump/new.sh
|
||||||
$lock swaylock -f
|
$lock swaylock -f
|
||||||
|
|
Loading…
Reference in a new issue