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]; 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 = { programs.emacs = {
# Clone emacs config from https://git.xenia.me.uk/pixelifytica/emacs.git # Clone emacs config from https://git.xenia.me.uk/pixelifytica/emacs.git
# git clone https://git.xenia.me.uk/pixelifytica/emacs.git ~/.config/emacs # git clone https://git.xenia.me.uk/pixelifytica/emacs.git ~/.config/emacs
@ -127,16 +127,7 @@
elfeed-tube-mpv elfeed-tube-mpv
]; ];
}; };
services = { services.git-sync.repositories = with config.xdg.userDirs; {
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; {
org = { org = {
path = "${documents}/Org"; path = "${documents}/Org";
uri = "git+https://git.xenia.me.uk/xenia/org.git"; uri = "git+https://git.xenia.me.uk/xenia/org.git";
@ -146,7 +137,6 @@
uri = "git+https://git.xenia.me.uk/xenia/references.git"; uri = "git+https://git.xenia.me.uk/xenia/references.git";
}; };
}; };
};
home.packages = with pkgs; [ home.packages = with pkgs; [
# Emacs requirements # Emacs requirements
imagemagick imagemagick

View file

@ -195,6 +195,13 @@
(lib.lists.forEach layers blur) (lib.lists.forEach layers blur)
++ (lib.lists.forEach layers ignorealpha); ++ (lib.lists.forEach layers ignorealpha);
windowrule = [ 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 + move system windows
"float, org.kde.polkit-kde-authentication-agent-1|Pinentry" "float, org.kde.polkit-kde-authentication-agent-1|Pinentry"
"center, org.kde.polkit-kde-authentication-agent-1|Pinentry" "center, org.kde.polkit-kde-authentication-agent-1|Pinentry"
@ -272,8 +279,7 @@
# Common program shortcuts # Common program shortcuts
"SUPER, Return, exec, ${alacritty.package}/bin/alacritty" "SUPER, Return, exec, ${alacritty.package}/bin/alacritty"
"SUPER, E, exec, ${emacs.finalPackage}/bin/emacsclient -c" "SUPER, E, exec, ${emacs.finalPackage}/bin/emacs"
"SUPER, W, exec, ${pkgs.nyxt}/bin/nyxt --no-socket"
# Rofi binds # Rofi binds
"SUPER, Space, exec, pkill rofi || ${rofi.finalPackage}/bin/rofi -show drun" "SUPER, Space, exec, pkill rofi || ${rofi.finalPackage}/bin/rofi -show drun"

View file

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

View file

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