Add KDE and set it as the default on the workstation host
Note: The kde configuration is currently incomplete. It's still missing some configuration using the plasma-manager flake. I'm going to get plasma working first and then worry about the small configuration details.
This commit is contained in:
parent
950d488894
commit
654cde2a3a
6 changed files with 131 additions and 23 deletions
Before Width: | Height: | Size: 1.4 MiB After Width: | Height: | Size: 1.4 MiB |
BIN
assets/wallpapers/kde.png
Normal file
BIN
assets/wallpapers/kde.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 895 KiB |
53
flake.nix
53
flake.nix
|
@ -9,28 +9,41 @@
|
||||||
url = "github:nix-community/home-manager";
|
url = "github:nix-community/home-manager";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
plasma-manager = {
|
||||||
|
url = "github:nix-community/plasma-manager";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
inputs.home-manager.follows = "home-manager";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { nixpkgs, impermanence, home-manager, nur, ... } @ inputs:
|
outputs = {
|
||||||
let
|
nixpkgs,
|
||||||
lib = nixpkgs.lib.extend (final: prev:
|
impermanence,
|
||||||
import ./lib { lib = final; }
|
home-manager,
|
||||||
);
|
nur,
|
||||||
in
|
plasma-manager,
|
||||||
{
|
...
|
||||||
nixosConfigurations = lib.mkHosts {
|
} @ inputs: let
|
||||||
modules = [
|
lib = nixpkgs.lib.extend (final: prev:
|
||||||
home-manager.nixosModules.home-manager {
|
import ./lib { lib = final; }
|
||||||
home-manager.sharedModules = [
|
);
|
||||||
nur.hmModules.nur
|
in {
|
||||||
];
|
nixosConfigurations = lib.mkHosts {
|
||||||
}
|
modules = [
|
||||||
impermanence.nixosModules.impermanence
|
home-manager.nixosModules.home-manager {
|
||||||
nur.nixosModules.nur
|
home-manager.sharedModules = [
|
||||||
];
|
nur.hmModules.nur
|
||||||
nixpkgs = nixpkgs;
|
plasma-manager.homeManagerModules.plasma-manager
|
||||||
inputs = inputs;
|
];
|
||||||
};
|
}
|
||||||
|
|
||||||
|
impermanence.nixosModules.impermanence
|
||||||
|
nur.nixosModules.nur
|
||||||
|
];
|
||||||
|
nixpkgs = nixpkgs;
|
||||||
|
inputs = inputs;
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -6,8 +6,8 @@
|
||||||
./persist.nix
|
./persist.nix
|
||||||
../../home/default.nix
|
../../home/default.nix
|
||||||
|
|
||||||
|
../../modules/desktop/environments/kde.nix
|
||||||
../../modules/system/basic.nix
|
../../modules/system/basic.nix
|
||||||
../../modules/desktop/environments/hyprland.nix
|
|
||||||
../../modules/system/security.nix
|
../../modules/system/security.nix
|
||||||
../../modules/desktop/apps/communication.nix
|
../../modules/desktop/apps/communication.nix
|
||||||
../../modules/desktop/apps/games.nix
|
../../modules/desktop/apps/games.nix
|
||||||
|
|
|
@ -104,10 +104,10 @@
|
||||||
ipc = "on";
|
ipc = "on";
|
||||||
splash = false;
|
splash = false;
|
||||||
preload = [
|
preload = [
|
||||||
"/nix/config/assets/wallpaper.jpg"
|
"/nix/config/assets/wallpapers/hyprland.jpg"
|
||||||
];
|
];
|
||||||
wallpaper = [
|
wallpaper = [
|
||||||
",/nix/config/assets/wallpaper.jpg"
|
",/nix/config/wallpapers/hyprland.jpg"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
95
modules/desktop/environments/kde.nix
Normal file
95
modules/desktop/environments/kde.nix
Normal file
|
@ -0,0 +1,95 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../../system/fonts.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
environment.sessionVariables = {
|
||||||
|
LIBVA_DRIVER_NAME = "nvidia";
|
||||||
|
XDG_SESSION_TYPE = "wayland";
|
||||||
|
GBM_BACKEND = "nvidia-drm";
|
||||||
|
__GLX_VENDOR_LIBRARY_NAME = "nvidia";
|
||||||
|
NVD_BACKEND = "direct";
|
||||||
|
MOZ_DISABLE_RDD_SANDBOX = 1;
|
||||||
|
NIXOS_OZONE_WL = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.desktopManager.plasma6.enable = true;
|
||||||
|
services.displayManager.sddm = {
|
||||||
|
enable = true;
|
||||||
|
wayland.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.plasma6.excludePackages = with pkgs.kdePackages; [
|
||||||
|
plasma-browser-integration
|
||||||
|
khelpcenter
|
||||||
|
krdp
|
||||||
|
];
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
nvidia-vaapi-driver
|
||||||
|
];
|
||||||
|
|
||||||
|
home-manager.users.hu = {
|
||||||
|
dconf.settings = {
|
||||||
|
"org/gnome/desktop/interface" = {
|
||||||
|
color-scheme = "prefer-dark";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gtk = {
|
||||||
|
enable = true;
|
||||||
|
theme = {
|
||||||
|
name = "breeze";
|
||||||
|
package = pkgs.kdePackages.breeze-gtk;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.plasma = {
|
||||||
|
enable = true;
|
||||||
|
workspace = {
|
||||||
|
lookAndFeel = "org.kde.breezedark.desktop";
|
||||||
|
wallpaper = "/nix/config/assets/wallpapers/kde.png";
|
||||||
|
};
|
||||||
|
|
||||||
|
panels = [
|
||||||
|
{
|
||||||
|
location = "bottom";
|
||||||
|
widgets = [
|
||||||
|
{
|
||||||
|
kickoff = {
|
||||||
|
icon = "nix-snowflake-white";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
iconTasks = {
|
||||||
|
launchers = [
|
||||||
|
"applications:org.kde.dolphin.desktop"
|
||||||
|
"applications:org.kde.konsole.desktop"
|
||||||
|
"applications:org.mozilla.firefox.desktop"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
"org.kde.plasma.marginsseperator"
|
||||||
|
{
|
||||||
|
digialclock = {
|
||||||
|
calendar.firstDayOfWeek = "monday";
|
||||||
|
time.format = "24h";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
systemTray.items = {
|
||||||
|
shown = [
|
||||||
|
"org.kde.plasma.networkmanagement"
|
||||||
|
"org.kde.plasma.volume"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue