Remove emacsclient, use emacs directly instead

Add some specific workspaces (emacs, firefox, libreoffice, chat,
steam) with custom icons, reduce persistent workspaces to those 5,
update windowrules and binds accordingly
This commit is contained in:
Evie Litherland-Smith 2024-03-13 17:52:48 +00:00
parent 7e129097b2
commit d973beca07
4 changed files with 23 additions and 23 deletions

View file

@ -4,7 +4,7 @@
...
}: {
imports = [../git/default.nix ../prog/default.nix];
programs.git.extraConfig.core.editor = "${config.programs.emacs.finalPackage}/bin/emacsclient -c";
programs.git.extraConfig.core.editor = "${config.programs.emacs.finalPackage}/bin/emacs";
programs.emacs = {
# Clone emacs config from https://git.xenia.me.uk/pixelifytica/emacs.git
# git clone https://git.xenia.me.uk/pixelifytica/emacs.git ~/.config/emacs
@ -127,16 +127,7 @@
elfeed-tube-mpv
];
};
services = {
emacs = {
enable = true;
package = config.programs.emacs.finalPackage;
defaultEditor = true;
client.enable = true;
socketActivation.enable = true;
startWithUserSession = false;
};
git-sync.repositories = with config.xdg.userDirs; {
services.git-sync.repositories = with config.xdg.userDirs; {
org = {
path = "${documents}/Org";
uri = "git+https://git.xenia.me.uk/xenia/org.git";
@ -146,7 +137,6 @@
uri = "git+https://git.xenia.me.uk/xenia/references.git";
};
};
};
home.packages = with pkgs; [
# Emacs requirements
imagemagick

View file

@ -195,6 +195,13 @@
(lib.lists.forEach layers blur)
++ (lib.lists.forEach layers ignorealpha);
windowrule = [
# Workspace binds
"workspace 1, emacs"
"workspace 2, firefox"
"workspace 3, (WebCord|signal|whatsapp-for-linux)"
"workspace 4, (libreoffice|soffice)(.*)"
"workspace 5, steam"
# Float + move system windows
"float, org.kde.polkit-kde-authentication-agent-1|Pinentry"
"center, org.kde.polkit-kde-authentication-agent-1|Pinentry"
@ -272,8 +279,7 @@
# Common program shortcuts
"SUPER, Return, exec, ${alacritty.package}/bin/alacritty"
"SUPER, E, exec, ${emacs.finalPackage}/bin/emacsclient -c"
"SUPER, W, exec, ${pkgs.nyxt}/bin/nyxt --no-socket"
"SUPER, E, exec, ${emacs.finalPackage}/bin/emacs"
# Rofi binds
"SUPER, Space, exec, pkill rofi || ${rofi.finalPackage}/bin/rofi -show drun"

View file

@ -61,8 +61,13 @@
"hyprland/workspaces" = {
format = "{icon}";
format-icons = {
"1" = " ";
"2" = "󰈹 ";
"3" = "󱧶 ";
"4" = "󰭹 ";
"5" = "󰓓 ";
default = "󰋙 ";
active = "󰫈 ";
# active = "󰫈 ";
urgent = "󰁡 ";
};
show-special = false;
@ -72,7 +77,6 @@
"3" = [];
"4" = [];
"5" = [];
"6" = [];
};
};
mpris = {

View file

@ -47,7 +47,7 @@
};
xdg.portal.enable = true;
xdg.mime = let
emacs = ["emacsclient.desktop" "emacs.desktop"];
emacs = ["emacs.desktop"];
# TODO add nyxt back to browser when I can fix opening
# links in existing sessions
browser = ["firefox.desktop"]; # nyxt.desktop