Switch back to plasma (again)
Add plasma-manager back, disable stylix theming for KDE in favour of plasma-manager options. Reorganise some config - move GTK settings up to desktop.nix since they're relevant to anything, move xdg portal config into sway only since plasma sets up it's own. Move xarchiver to sway only, using ark on plasma. Add protonmail-bridge-gui for plasma, set to autostart
This commit is contained in:
parent
c14cad8d9f
commit
b7c74a484b
24
flake.lock
24
flake.lock
|
@ -275,12 +275,36 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"plasma-manager": {
|
||||||
|
"inputs": {
|
||||||
|
"home-manager": [
|
||||||
|
"home-manager"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1727210241,
|
||||||
|
"narHash": "sha256-lufS6uzSbSrggNCSgubymMQWnQMh7PvQ+lRZ8qH9Uoc=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "plasma-manager",
|
||||||
|
"rev": "a02fef2ece8084aff0b41700bb57d24d73574cd1",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "plasma-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"iosevka-custom": "iosevka-custom",
|
"iosevka-custom": "iosevka-custom",
|
||||||
"nix-index-database": "nix-index-database",
|
"nix-index-database": "nix-index-database",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs_2",
|
||||||
|
"plasma-manager": "plasma-manager",
|
||||||
"stylix": "stylix"
|
"stylix": "stylix"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -12,6 +12,13 @@
|
||||||
url = "github:nix-community/home-manager/release-24.05";
|
url = "github:nix-community/home-manager/release-24.05";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
plasma-manager = {
|
||||||
|
url = "github:nix-community/plasma-manager";
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.follows = "nixpkgs";
|
||||||
|
home-manager.follows = "home-manager";
|
||||||
|
};
|
||||||
|
};
|
||||||
stylix = {
|
stylix = {
|
||||||
url = "github:danth/stylix";
|
url = "github:danth/stylix";
|
||||||
inputs = {
|
inputs = {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ pkgs, username, ... }:
|
{ pkgs, username, ... }:
|
||||||
{
|
{
|
||||||
imports = [ ./sway.nix ];
|
imports = [ ./plasma.nix ];
|
||||||
home-manager.users.${username}.imports = [ ./home/desktop.nix ];
|
home-manager.users.${username}.imports = [ ./home/desktop.nix ];
|
||||||
nixpkgs.config.chromium.commandLineArgs = "--enable-features=UseOzonePlatform --ozone-platform=wayland";
|
nixpkgs.config.chromium.commandLineArgs = "--enable-features=UseOzonePlatform --ozone-platform=wayland";
|
||||||
hardware.bluetooth.enable = true;
|
hardware.bluetooth.enable = true;
|
||||||
|
@ -13,7 +13,6 @@
|
||||||
libsecret
|
libsecret
|
||||||
libnotify
|
libnotify
|
||||||
xdg-utils
|
xdg-utils
|
||||||
xarchiver
|
|
||||||
hunspell
|
hunspell
|
||||||
hunspellDicts.en_GB-large
|
hunspellDicts.en_GB-large
|
||||||
];
|
];
|
||||||
|
@ -57,8 +56,4 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
xdg.portal = {
|
|
||||||
enable = true;
|
|
||||||
config.common.default = "*"; # TODO change for xdg-desktop-portal > 1.17 changes
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./sway/default.nix
|
./plasma/default.nix
|
||||||
./emacs/default.nix
|
./emacs/default.nix
|
||||||
./terminal/default.nix
|
./terminal/default.nix
|
||||||
./browser/default.nix
|
./browser/default.nix
|
||||||
|
@ -16,6 +16,14 @@
|
||||||
];
|
];
|
||||||
services.syncthing.enable = true;
|
services.syncthing.enable = true;
|
||||||
programs.mpv.enable = true;
|
programs.mpv.enable = true;
|
||||||
|
gtk = {
|
||||||
|
enable = true;
|
||||||
|
iconTheme = {
|
||||||
|
package = pkgs.papirus-icon-theme;
|
||||||
|
name = "Papirus";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
qt.enable = true;
|
||||||
xdg = {
|
xdg = {
|
||||||
mime.enable = true;
|
mime.enable = true;
|
||||||
mimeApps =
|
mimeApps =
|
||||||
|
|
|
@ -48,9 +48,7 @@ in
|
||||||
"application/pdf" = [ "org.pwmt.zathura.desktop" ];
|
"application/pdf" = [ "org.pwmt.zathura.desktop" ];
|
||||||
"application/epub+zip" = [ "org.pwmt.zathura.desktop" ];
|
"application/epub+zip" = [ "org.pwmt.zathura.desktop" ];
|
||||||
"application/msword" = [ "writer.desktop" ];
|
"application/msword" = [ "writer.desktop" ];
|
||||||
"application/zip" = [ "xarchiver.desktop" ];
|
|
||||||
|
|
||||||
"application/x-archive" = [ "xarchiver.desktop" ];
|
|
||||||
"application/x-extension-htm" = browser;
|
"application/x-extension-htm" = browser;
|
||||||
"application/x-extension-html" = browser;
|
"application/x-extension-html" = browser;
|
||||||
"application/x-extension-shtml" = browser;
|
"application/x-extension-shtml" = browser;
|
||||||
|
|
|
@ -1,74 +1,66 @@
|
||||||
{
|
{
|
||||||
config,
|
config,
|
||||||
# lib,
|
|
||||||
pkgs,
|
pkgs,
|
||||||
|
inputs,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
# imports = [ ./konsole.nix ];
|
stylix.targets.kde.enable = false;
|
||||||
|
imports = [ inputs.plasma-manager.homeManagerModules.plasma-manager ];
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
|
protonmail-bridge-gui
|
||||||
libreoffice-qt-fresh
|
libreoffice-qt-fresh
|
||||||
rc2nix
|
rc2nix
|
||||||
wl-clipboard
|
wl-clipboard
|
||||||
(papirus-icon-theme.override { color = "breeze"; })
|
|
||||||
];
|
];
|
||||||
services.gpg-agent.pinentryPackage = pkgs.pinentry-qt;
|
services.gpg-agent.pinentryPackage = pkgs.pinentry-qt;
|
||||||
programs.plasma = {
|
programs.plasma = {
|
||||||
enable = true;
|
enable = true;
|
||||||
overrideConfig = true;
|
overrideConfig = true;
|
||||||
|
|
||||||
# workspace =
|
workspace = {
|
||||||
# let
|
# theme = "default";
|
||||||
# toCapital = import ../lib/to_capital.nix lib;
|
# colorScheme = "Breeze";
|
||||||
# in
|
iconTheme = config.gtk.iconTheme.name;
|
||||||
# {
|
# windowDecorations = {
|
||||||
# clickItemTo = "open";
|
# library = "org.kde.breeze";
|
||||||
# theme = "default";
|
# theme = "Breeze";
|
||||||
# colorScheme = "Breeze${toCapital config.lib.stylix.scheme.variant}";
|
# };
|
||||||
# iconTheme = "Papirus-${toCapital config.lib.stylix.scheme.variant}";
|
cursor = {
|
||||||
# windowDecorations = {
|
inherit (config.home.pointerCursor) size;
|
||||||
# library = "org.kde.breeze";
|
theme = config.home.pointerCursor.name;
|
||||||
# theme = "Breeze";
|
};
|
||||||
# };
|
wallpaper = config.stylix.image;
|
||||||
# cursor = {
|
};
|
||||||
# inherit (config.home.pointerCursor) size;
|
|
||||||
# theme = config.home.pointerCursor.name;
|
|
||||||
# };
|
|
||||||
# wallpaper = "${../wallpapers/landscapes/tropic_island_day.jpg}";
|
|
||||||
# };
|
|
||||||
|
|
||||||
# fonts =
|
fonts =
|
||||||
# let
|
let
|
||||||
# general = {
|
general = {
|
||||||
# family = config.stylix.fonts.sansSerif.name;
|
family = config.stylix.fonts.sansSerif.name;
|
||||||
# pointSize = 12;
|
pointSize = 12;
|
||||||
# };
|
};
|
||||||
# small = {
|
small = {
|
||||||
# inherit (general) family;
|
inherit (general) family;
|
||||||
# pointSize = general.pointSize - 2;
|
pointSize = general.pointSize - 2;
|
||||||
# };
|
};
|
||||||
# fixedWidth = {
|
fixedWidth = {
|
||||||
# family = config.stylix.fonts.monospace.name;
|
family = config.stylix.fonts.monospace.name;
|
||||||
# pointSize = 12;
|
pointSize = 12;
|
||||||
# };
|
};
|
||||||
# in
|
in
|
||||||
# {
|
{
|
||||||
# inherit general small fixedWidth;
|
inherit general small fixedWidth;
|
||||||
# menu = general;
|
menu = general;
|
||||||
# toolbar = general;
|
toolbar = general;
|
||||||
# windowTitle = small;
|
windowTitle = small;
|
||||||
# };
|
};
|
||||||
|
|
||||||
hotkeys.commands = {
|
hotkeys.commands = {
|
||||||
"launch-terminal" =
|
"launch-alacritty" = {
|
||||||
let
|
name = "Launch Alacritty terminal emulator";
|
||||||
command = config.programs.plasma.configFile.kdeglobals.General.TerminalApplication.value;
|
key = "Ctrl+Alt+T";
|
||||||
in
|
command = "alacritty";
|
||||||
{
|
};
|
||||||
inherit command;
|
|
||||||
name = "Launch ${command} emulator";
|
|
||||||
key = "Ctrl+Alt+T";
|
|
||||||
};
|
|
||||||
"launch-emacs" = {
|
"launch-emacs" = {
|
||||||
name = "Launch Emacs Client Window";
|
name = "Launch Emacs Client Window";
|
||||||
key = "Meta+Alt+X";
|
key = "Meta+Alt+X";
|
||||||
|
@ -214,7 +206,7 @@
|
||||||
};
|
};
|
||||||
dimDisplay = {
|
dimDisplay = {
|
||||||
enable = true;
|
enable = true;
|
||||||
idleTimeOut = 300;
|
# idleTimeOut = 300;
|
||||||
};
|
};
|
||||||
turnOffDisplay = {
|
turnOffDisplay = {
|
||||||
idleTimeout = 1800;
|
idleTimeout = 1800;
|
||||||
|
@ -229,7 +221,7 @@
|
||||||
};
|
};
|
||||||
dimDisplay = {
|
dimDisplay = {
|
||||||
enable = true;
|
enable = true;
|
||||||
idleTimeOut = 120;
|
# idleTimeOut = 120;
|
||||||
};
|
};
|
||||||
turnOffDisplay = {
|
turnOffDisplay = {
|
||||||
idleTimeout = 300;
|
idleTimeout = 300;
|
||||||
|
@ -244,7 +236,7 @@
|
||||||
};
|
};
|
||||||
dimDisplay = {
|
dimDisplay = {
|
||||||
enable = true;
|
enable = true;
|
||||||
idleTimeOut = 60;
|
# idleTimeOut = 60;
|
||||||
};
|
};
|
||||||
turnOffDisplay = {
|
turnOffDisplay = {
|
||||||
idleTimeout = 120;
|
idleTimeout = 120;
|
||||||
|
@ -255,6 +247,10 @@
|
||||||
|
|
||||||
configFile = {
|
configFile = {
|
||||||
baloofilerc."Basic Settings"."Indexing-Enabled" = false;
|
baloofilerc."Basic Settings"."Indexing-Enabled" = false;
|
||||||
|
kwalletrc."org.freedesktop.secrets" = {
|
||||||
|
Enabled = false;
|
||||||
|
apiEnabled = false;
|
||||||
|
};
|
||||||
kcminputrc.Keyboard.NumLock = 1;
|
kcminputrc.Keyboard.NumLock = 1;
|
||||||
yakuakerc = {
|
yakuakerc = {
|
||||||
Dialogs.FirstRun = false;
|
Dialogs.FirstRun = false;
|
||||||
|
@ -290,44 +286,44 @@
|
||||||
KeepClipboardContents = false;
|
KeepClipboardContents = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
# kdeglobals = {
|
kdeglobals = {
|
||||||
# General =
|
General =
|
||||||
# let
|
let
|
||||||
# AccentColor =
|
AccentColor =
|
||||||
# let
|
let
|
||||||
# r = config.lib.stylix.scheme."base0D-rgb-r";
|
r = config.lib.stylix.scheme."base0D-rgb-r";
|
||||||
# g = config.lib.stylix.scheme."base0D-rgb-g";
|
g = config.lib.stylix.scheme."base0D-rgb-g";
|
||||||
# b = config.lib.stylix.scheme."base0D-rgb-b";
|
b = config.lib.stylix.scheme."base0D-rgb-b";
|
||||||
# in
|
in
|
||||||
# "${r}, ${g}, ${b}";
|
"${r}, ${g}, ${b}";
|
||||||
# in
|
in
|
||||||
# {
|
{
|
||||||
# inherit AccentColor;
|
inherit AccentColor;
|
||||||
# LastUsedCustomAccentColor = AccentColor;
|
LastUsedCustomAccentColor = AccentColor;
|
||||||
# TerminalApplication = "konsole";
|
TerminalApplication = "konsole";
|
||||||
# TerminalService = "org.kde.konsole.desktop";
|
TerminalService = "org.kde.konsole.desktop";
|
||||||
# };
|
};
|
||||||
# WM = {
|
WM = {
|
||||||
# # TODO convert to base16 colours at some point
|
# TODO convert to base16 colours at some point
|
||||||
# activeBackground = "227,229,231";
|
activeBackground = "227,229,231";
|
||||||
# activeBlend = "227,229,231";
|
activeBlend = "227,229,231";
|
||||||
# activeForeground = "35,38,41";
|
activeForeground = "35,38,41";
|
||||||
# inactiveBackground = "239,240,241";
|
inactiveBackground = "239,240,241";
|
||||||
# inactiveBlend = "239,240,241";
|
inactiveBlend = "239,240,241";
|
||||||
# inactiveForeground = "112,125,138";
|
inactiveForeground = "112,125,138";
|
||||||
# };
|
};
|
||||||
# };
|
};
|
||||||
# breezerc = {
|
breezerc = {
|
||||||
# Common = {
|
Common = {
|
||||||
# OutlineClassButton = true;
|
OutlineClassButton = true;
|
||||||
# OutlineCloseButtone = true;
|
OutlineCloseButtone = true;
|
||||||
# ShadowSize = "ShadowVeryLarge";
|
ShadowSize = "ShadowVeryLarge";
|
||||||
# ShadowStrength = "128";
|
ShadowStrength = "128";
|
||||||
# };
|
};
|
||||||
# Style = {
|
Style = {
|
||||||
# MenuOpacity = "100";
|
MenuOpacity = "100";
|
||||||
# };
|
};
|
||||||
# };
|
};
|
||||||
dolphinrc = {
|
dolphinrc = {
|
||||||
ContentDisplay = {
|
ContentDisplay = {
|
||||||
UsePermissionsFormat = "CombinedFormat";
|
UsePermissionsFormat = "CombinedFormat";
|
||||||
|
@ -355,29 +351,19 @@
|
||||||
LatitudeFixed = "51.7";
|
LatitudeFixed = "51.7";
|
||||||
LongitudeFixed = "-1.2";
|
LongitudeFixed = "-1.2";
|
||||||
};
|
};
|
||||||
# "Effect-translucency" = {
|
"Effect-translucency" = {
|
||||||
# # Re-enable translucency when I can work out how to apply
|
Inactive = 100;
|
||||||
# # blur to all windows
|
MoveResize = 100;
|
||||||
# Inactive = 100;
|
Dialogs = 100;
|
||||||
# MoveResize = 100;
|
ComboboxPopups = 100;
|
||||||
# Dialogs = 100;
|
Menus = 100;
|
||||||
# ComboboxPopups = 100;
|
};
|
||||||
# Menus = 100;
|
"org.kde.kdecoration2" = {
|
||||||
# };
|
BorderSize = "None";
|
||||||
# "org.kde.kdecoration2" = {
|
BorderSizeAuto = "false";
|
||||||
# BorderSize = "None";
|
};
|
||||||
# BorderSizeAuto = "false";
|
|
||||||
# };
|
|
||||||
# "Script-krohnkite" = {
|
|
||||||
# limitTileWidth = true;
|
|
||||||
# screenGapBottom = 5;
|
|
||||||
# screenGapLeft = 5;
|
|
||||||
# screenGapRight = 5;
|
|
||||||
# screenGapTop = 5;
|
|
||||||
# tileLayoutGap = 5;
|
|
||||||
# };
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
xdg.configFile."autostart/org.kde.yakuake.desktop".source = "${pkgs.yakuake}/share/applications/org.kde.yakuake.desktop";
|
xdg.configFile."autostart/proton-bridge-gui.desktop".source = "${pkgs.protonmail-bridge-gui}/share/applications/proton-bridge-gui.desktop";
|
||||||
}
|
}
|
||||||
|
|
|
@ -117,13 +117,6 @@
|
||||||
tray = "never";
|
tray = "never";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
gtk = {
|
|
||||||
enable = true;
|
|
||||||
iconTheme = {
|
|
||||||
package = pkgs.papirus-icon-theme.override { color = "violet"; };
|
|
||||||
name = "Papirus-${(import ../lib/to_capital.nix lib) config.lib.stylix.scheme.variant}";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
wayland.windowManager.sway = {
|
wayland.windowManager.sway = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.swayfx.overrideAttrs (old: {
|
package = pkgs.swayfx.overrideAttrs (old: {
|
||||||
|
|
|
@ -1,10 +1,17 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, username, ... }:
|
||||||
{
|
{
|
||||||
environment.plasma6.excludePackages = [ pkgs.kdePackages.plasma-browser-integration ];
|
environment.plasma6.excludePackages = with pkgs.kdePackages; [
|
||||||
|
plasma-browser-integration
|
||||||
|
konsole
|
||||||
|
kate
|
||||||
|
];
|
||||||
services = {
|
services = {
|
||||||
displayManager.sddm = {
|
displayManager = {
|
||||||
enable = true;
|
autoLogin.user = username;
|
||||||
wayland.enable = true;
|
sddm = {
|
||||||
|
enable = true;
|
||||||
|
wayland.enable = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
desktopManager.plasma6 = {
|
desktopManager.plasma6 = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
{ pkgs, username, ... }:
|
{ pkgs, username, ... }:
|
||||||
{
|
{
|
||||||
environment.sessionVariables.GRIM_DEFAULT_DIR = "$HOME/Pictures/Screenshots";
|
environment = {
|
||||||
|
sessionVariables.GRIM_DEFAULT_DIR = "$HOME/Pictures/Screenshots";
|
||||||
|
systemPackages = [ pkgs.xarchiver ];
|
||||||
|
};
|
||||||
programs = {
|
programs = {
|
||||||
thunar = {
|
thunar = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -38,5 +41,9 @@
|
||||||
style = "adwaita";
|
style = "adwaita";
|
||||||
platformTheme = "gnome";
|
platformTheme = "gnome";
|
||||||
};
|
};
|
||||||
xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
xdg.portal = {
|
||||||
|
enable = true;
|
||||||
|
config.common.default = "*"; # TODO change for xdg-desktop-portal > 1.17 changes
|
||||||
|
extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue