Move laptop to Plasma 6

This commit is contained in:
albert 2025-01-21 11:02:03 -08:00
parent c1980d9020
commit 4ccf127baf
Signed by: albert
GPG key ID: 3895DD267CA11BA9
13 changed files with 38 additions and 29 deletions
flake.nix
home-manager
common
desktops
software
cli/nixvim
gui
hosts/framework16/desktops/hyprland
lib
nixos
common/desktops/hyprland
hosts/framework16
wallpapers

View file

@ -64,7 +64,7 @@
# User Machines # User Machines
nixos-desktop = libx.mkHost { hostname = "nixos-desktop"; unfree = true; desktop = "plasma6"; }; nixos-desktop = libx.mkHost { hostname = "nixos-desktop"; unfree = true; desktop = "plasma6"; };
framework13 = libx.mkHost { hostname = "framework13"; unfree = true; desktop = "gnome"; }; framework13 = libx.mkHost { hostname = "framework13"; unfree = true; desktop = "gnome"; };
framework16 = libx.mkHost { hostname = "framework16"; unfree = true; desktop = "gnome"; }; framework16 = libx.mkHost { hostname = "framework16"; unfree = true; desktop = "plasma6"; };
steamdeck = libx.mkDeck { hostname = "steamdeck"; desktop = "plasma6"; }; steamdeck = libx.mkDeck { hostname = "steamdeck"; desktop = "plasma6"; };
# Raspberry Pi's # Raspberry Pi's
@ -87,7 +87,7 @@
# User Machines # User Machines
"albert@nixos-desktop" = libx.mkHome { hostname = "nixos-desktop"; desktop = "plasma6"; }; "albert@nixos-desktop" = libx.mkHome { hostname = "nixos-desktop"; desktop = "plasma6"; };
"albert@framework13" = libx.mkHome { hostname = "framework13"; desktop = "gnome"; }; "albert@framework13" = libx.mkHome { hostname = "framework13"; desktop = "gnome"; };
"albert@framework16" = libx.mkHome { hostname = "framework16"; desktop = "gnome"; }; "albert@framework16" = libx.mkHome { hostname = "framework16"; desktop = "plasma6"; };
"albert@steamdeck" = libx.mkHome { hostname = "steamdeck"; desktop = "plasma6"; }; "albert@steamdeck" = libx.mkHome { hostname = "steamdeck"; desktop = "plasma6"; };
# Raspberry Pi's # Raspberry Pi's

View file

@ -85,9 +85,11 @@
active_opacity = 0.75; active_opacity = 0.75;
inactive_opacity = 0.6; inactive_opacity = 0.6;
fullscreen_opacity = 1.0; fullscreen_opacity = 1.0;
drop_shadow = true; shadow = {
shadow_range = 4; enabled = true;
shadow_render_power = 3; range = 4;
render_power = 3;
};
blur = { blur = {
size = 6; size = 6;
passes = 3; passes = 3;
@ -110,7 +112,6 @@
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
pseudotile = true; # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below pseudotile = true; # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = true;# you probably want this preserve_split = true;# you probably want this
no_gaps_when_only = 1; # If it's the only window int he layout, 1=don't show gaps
}; };
windowrule = [ windowrule = [
"noblur,^(firefox)$" # disables blur for firefox "noblur,^(firefox)$" # disables blur for firefox

View file

@ -1,6 +1,6 @@
{ pkgs, ... }: { { pkgs, ... }: {
programs.swaylock = { programs.swaylock = {
enable = true; enable = false;
package = pkgs.swaylock-effects; package = pkgs.swaylock-effects;
settings = { settings = {
# All <color> options are of the form <rrggbb[aa]>. # All <color> options are of the form <rrggbb[aa]>.

View file

@ -1,14 +1,15 @@
{ pkgs, ... }: { { lib, pkgs, ... }: {
imports = [ imports = [
./components ./components
./assets/waybar/scripts.nix ./assets/waybar/scripts.nix
]; ];
# TODO Update this when I move # FIX: Make sure this works with geoclue2
services.gammastep = { services.gammastep = {
enable = true; enable = true;
latitude = "52.23"; provider = "geoclue2";
longitude = "21.01"; # latitude = "52.23";
# longitude = "21.01";
}; };
gtk.enable = true; gtk.enable = true;
@ -19,7 +20,7 @@
stylix = { stylix = {
enable = true; enable = true;
autoEnable = true; autoEnable = lib.mkForce false;
opacity = { opacity = {
desktop = 0.7; desktop = 0.7;
popups = 0.7; popups = 0.7;

View file

@ -68,8 +68,8 @@
{ {
name = "org.kde.plasma.kicker"; name = "org.kde.plasma.kicker";
config = { config = {
General.icon = "draw-circle"; # General.icon = "draw-circle";
# General.icon = "nix-snowflake-white"; General.icon = "nix-snowflake-white";
}; };
} }
{ {
@ -100,6 +100,7 @@
"org.kde.plasma.notifications" "org.kde.plasma.notifications"
"org.kde.plasma.microphone" "org.kde.plasma.microphone"
"org.kde.plasma.mediaplayer" "org.kde.plasma.mediaplayer"
"org.kde.plasma.media-player"
"org.kde.plasma.manage-inputmethod" "org.kde.plasma.manage-inputmethod"
"org.kde.plasma.keyboardindicator" "org.kde.plasma.keyboardindicator"
"org.kde.plasma.keyboardlayout" "org.kde.plasma.keyboardlayout"
@ -117,6 +118,8 @@
"remmina" "remmina"
"vlc" "vlc"
"Battle.net" "Battle.net"
"battle.net"
""
]; ];
}; };
}; };

View file

@ -77,7 +77,7 @@
}; };
notify = { notify = {
enable = true; enable = true;
topDown = true; topDown = false;
fps = 60; fps = 60;
stages = "slide"; stages = "slide";
}; };

View file

@ -34,7 +34,7 @@
kagi-search kagi-search
consent-o-matic consent-o-matic
bitwarden bitwarden
markdownload copy-selection-as-markdown
]; ];
containersForce = true; containersForce = true;

View file

@ -1,7 +1,7 @@
{ theme, ... }: { { theme, ... }: {
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
settings = { settings = {
monitor = ",highrr,auto,1.175"; monitor = ",highrr,auto,1";
bind = [ bind = [
'', XF86AudioMute, exec, swayosd --output-volume=mute-toggle'' '', XF86AudioMute, exec, swayosd --output-volume=mute-toggle''
'', XF86AudioPrev, exec, playerctl previous'' '', XF86AudioPrev, exec, playerctl previous''

View file

@ -6,9 +6,9 @@
allowUnfree = unfree; allowUnfree = unfree;
permittedInsecurePackages = [ permittedInsecurePackages = [
"electron-27.3.11" # Logseq "electron-27.3.11" # Logseq
# "olm-3.2.16" # Unknown
"dotnet-runtime-wrapped-7.0.20" "dotnet-runtime-wrapped-7.0.20"
"dotnet-runtime-7.0.20" "dotnet-runtime-7.0.20"
"olm-3.2.16" # Something in hyprland
]; ];
}; };
hostPlatform = system; hostPlatform = system;
@ -20,9 +20,9 @@
allowUnfree = unfree; allowUnfree = unfree;
permittedInsecurePackages = [ permittedInsecurePackages = [
"electron-27.3.11" # Logseq "electron-27.3.11" # Logseq
# "olm-3.2.16" # Unknown
"dotnet-runtime-wrapped-7.0.20" "dotnet-runtime-wrapped-7.0.20"
"dotnet-runtime-7.0.20" "dotnet-runtime-7.0.20"
"olm-3.2.16" # Something in hyprland
]; ];
}; };
hostPlatform = system; hostPlatform = system;

View file

@ -143,7 +143,6 @@
]; ];
# Enable sound with pipewire. # Enable sound with pipewire.
sound.enable = true;
security.rtkit.enable = true; security.rtkit.enable = true;
services.pipewire = { services.pipewire = {
enable = true; enable = true;

View file

@ -3,7 +3,7 @@
inputs.nixos-hardware.nixosModules.framework-16-7040-amd inputs.nixos-hardware.nixosModules.framework-16-7040-amd
(modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/installer/scan/not-detected.nix")
./disks.nix ./disks.nix
./vm-gpu.nix # ./vm-gpu.nix
../../common/services/tailscale-autoconnect.nix ../../common/services/tailscale-autoconnect.nix
../../common/modules/secureboot.nix ../../common/modules/secureboot.nix
# ../../common/modules/boot.nix # ../../common/modules/boot.nix

View file

@ -1,8 +1,8 @@
{ pkgs, lib, ... }: # https://olai.dev/blog/nvidia-vm-passthrough/ { pkgs, lib, pkgs-unstable, ... }: # https://olai.dev/blog/nvidia-vm-passthrough/
let let
devices = [ devices = [
"1002:7480" # Video "1002:7480" # Video
"1002:1640" # Audio "1002:ab30" # Audio
]; ];
in { in {
virtualisation.libvirtd = { virtualisation.libvirtd = {
@ -10,17 +10,22 @@ in {
qemu.ovmf.enable = true; qemu.ovmf.enable = true;
onBoot = "ignore"; onBoot = "ignore";
onShutdown = "shutdown"; onShutdown = "shutdown";
}; };
programs.virt-manager.enable = true; programs.virt-manager.enable = true;
users.users.albert.extraGroups = [ "libvirtd" ]; users.users.albert.extraGroups = [ "libvirtd" ];
environment.systemPackages = [ pkgs.virt-manager ]; environment.systemPackages = [
pkgs.virt-manager
pkgs.looking-glass-client
];
systemd.tmpfiles.rules = [
"f /dev/shm/looking-glass 0660 albert libvirtd -"
];
boot.kernelParams = [ boot.kernelParams = [
"vfio-pci.ids=${lib.concatStringsSep "," devices}" "vfio-pci.ids=${lib.concatStringsSep "," devices}"
"intel_iommu=on" "amd_iommu=on"
"iommu=pt"
]; ];
# Make the devices bind to VFIO # Make the devices bind to VFIO

@ -1 +1 @@
Subproject commit 8ed82c9afaac6359cf4603196f7a5bd4b399a4b5 Subproject commit 26552d8bade6fa39188ebf68e9ffa1a8dcd75108