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";
|
||||
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:
|
||||
let
|
||||
lib = nixpkgs.lib.extend (final: prev:
|
||||
import ./lib { lib = final; }
|
||||
);
|
||||
in
|
||||
{
|
||||
nixosConfigurations = lib.mkHosts {
|
||||
modules = [
|
||||
home-manager.nixosModules.home-manager {
|
||||
home-manager.sharedModules = [
|
||||
nur.hmModules.nur
|
||||
];
|
||||
}
|
||||
impermanence.nixosModules.impermanence
|
||||
nur.nixosModules.nur
|
||||
];
|
||||
nixpkgs = nixpkgs;
|
||||
inputs = inputs;
|
||||
};
|
||||
outputs = {
|
||||
nixpkgs,
|
||||
impermanence,
|
||||
home-manager,
|
||||
nur,
|
||||
plasma-manager,
|
||||
...
|
||||
} @ inputs: let
|
||||
lib = nixpkgs.lib.extend (final: prev:
|
||||
import ./lib { lib = final; }
|
||||
);
|
||||
in {
|
||||
nixosConfigurations = lib.mkHosts {
|
||||
modules = [
|
||||
home-manager.nixosModules.home-manager {
|
||||
home-manager.sharedModules = [
|
||||
nur.hmModules.nur
|
||||
plasma-manager.homeManagerModules.plasma-manager
|
||||
];
|
||||
}
|
||||
|
||||
impermanence.nixosModules.impermanence
|
||||
nur.nixosModules.nur
|
||||
];
|
||||
nixpkgs = nixpkgs;
|
||||
inputs = inputs;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
./persist.nix
|
||||
../../home/default.nix
|
||||
|
||||
../../modules/desktop/environments/kde.nix
|
||||
../../modules/system/basic.nix
|
||||
../../modules/desktop/environments/hyprland.nix
|
||||
../../modules/system/security.nix
|
||||
../../modules/desktop/apps/communication.nix
|
||||
../../modules/desktop/apps/games.nix
|
||||
|
|
|
@ -104,10 +104,10 @@
|
|||
ipc = "on";
|
||||
splash = false;
|
||||
preload = [
|
||||
"/nix/config/assets/wallpaper.jpg"
|
||||
"/nix/config/assets/wallpapers/hyprland.jpg"
|
||||
];
|
||||
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