From fb9d0e3ebd7f5b3edd6746b9f247f16c51dce19d Mon Sep 17 00:00:00 2001 From: Gregor Kleen Date: Mon, 12 Aug 2024 11:01:16 +0200 Subject: ... --- accounts/gkleen@sif/default.nix | 88 ++++++++++++++++++++++++++++++++++------- 1 file changed, 74 insertions(+), 14 deletions(-) (limited to 'accounts/gkleen@sif/default.nix') diff --git a/accounts/gkleen@sif/default.nix b/accounts/gkleen@sif/default.nix index dc505f6d..1cb7c751 100644 --- a/accounts/gkleen@sif/default.nix +++ b/accounts/gkleen@sif/default.nix @@ -38,15 +38,25 @@ let --prefix PATH : ${pkgs.pulseaudio}/bin ''; }; - wrapElectron = { package, bin ? package.meta.mainProgram or package.pname or (pkgs.lib.strings.nameFromURL package.name "-"), outBin ? bin, sandbox ? true }: pkgs.runCommand "${package.name}-wrapped" { buildInputs = with pkgs; [ makeWrapper ]; } '' - mkdir -p "$out/bin" - makeWrapper ${package}/bin/${bin} $out/bin/${outBin} \ - ${optionalString (!sandbox) "--add-flags '--no-sandbox'"} - ''; + wrapElectron = { package, bin ? package.meta.mainProgram or package.pname or (pkgs.lib.strings.nameFromURL package.name "-"), outBin ? bin, sandbox ? true }: pkgs.symlinkJoin { + name = "${package.name}-wrapped"; + buildInputs = with pkgs; [ makeWrapper ]; + paths = [ package ]; + inherit bin outBin; + postBuild = '' + hidden=$out/bin/."$(basename "$bin")"-wrapped + while [ -e "$hidden" ]; do + hidden="''${hidden}_" + done + mv "$out/bin/$bin" "$hidden" + makeWrapper "$hidden" "$out/bin/$outBin" \ + ${optionalString (!sandbox) "--add-flags '--no-sandbox'"} + ''; + }; wrappedChrome = wrapElectron { package = pkgs.google-chrome; outBin = "google-chrome"; }; wrappedZulip = wrapElectron { package = pkgs.zulip; bin = "zulip"; outBin = "zulip"; }; - wrappedElementDesktop = wrapElectron { package = pkgs.element-desktop; bin = "element-desktop"; outBin = "element"; }; + wrappedElementDesktop = wrapElectron { package = pkgs.element-desktop; bin = "element-desktop"; }; wrappedRocketChatDesktop = wrapElectron { package = pkgs.rocketchat-desktop; bin = "rocketchat-desktop"; outBin = "rocketchat"; }; wrappedYTMDesktop = wrapElectron { package = pkgs.ytmdesktop; sandbox = false; }; @@ -355,7 +365,7 @@ in { }; privacy = { icon-spacing = 6; - icon-size = 12; + icon-size = 11; modules = [ { type = "screenshare"; } { type = "audio-in"; } ]; }; idle_inhibitor = { @@ -423,7 +433,7 @@ in { margin-right: 9px; } - label.module { + .module { margin: 0 5px; } @@ -448,8 +458,15 @@ in { opacity: 0.6; } + #tray { + margin: 0 2px; + } #battery, #idle_inhibitor, #backlight { color: @grey; + margin: 0 5px 0 2px; + } + #backlight, #idle_inhibitor { + margin: 0 7px 0 2px; } #battery.warning { color: @orange; @@ -464,10 +481,17 @@ in { color: @white; } + #idle_inhibitor { + padding-top: 1px; + margin: 0 9px 0 2px; + } + #privacy { color: @red; - margin-right: 4px; - margin-left: 2px; + margin: -1px 2px 0px 5px; + } + #clock { + margin-right: 5px; } ''; }; @@ -514,6 +538,29 @@ in { ]; }; }; + fuzzel = { + enable = true; + settings = { + main = { + terminal = lib.getExe pkgs.kitty; + layer = "overlay"; + icon-theme = "Paper"; + font = "Fira Sans"; + }; + colors = { + background = "000000aa"; + text = "cdd6f4ff"; + match = "94e2d5ff"; + selection = "585b70ff"; + selection-match = "94e2d5ff"; + selection-text = "cdd6f4ff"; + border = "b4befeff"; + }; + dmenu = { + exit-immediately-if-empty = true; + }; + }; + }; }; services = { @@ -709,12 +756,12 @@ in { wrappedKeepassxc sxiv xclip mumble pulseaudio-ctl pamixer libnotify synergy xorg.xbacklight screen-message wrappedYTMDesktop qt5ct playerctl evince thunderbird - wrappedZulip zoom-us steam steam-run wireshark virt-manager + zoom-us steam steam-run wireshark virt-manager rclone cached-nix-shell xournal xmonad worktime - fira-code-symbols libreoffice xournalpp wrappedChrome + fira-code-symbols libreoffice xournalpp google-chrome nixos-shell virt-viewer freerdp gnome-icon-theme - paper-icon-theme sshpassSecret weechat wrappedElementDesktop - matrix-synapse-tools.synadm wrappedRocketChatDesktop + paper-icon-theme sshpassSecret weechat element-desktop + matrix-synapse-tools.synadm flakeInputs.deploy-rs.packages.${config.nixpkgs.system}.deploy-rs sieve-connect gimp inkscape udiskie glab scrot nitrokey-app pynitrokey gtklock wlrctl nvidiaOffloadScript @@ -816,6 +863,19 @@ in { }; }; + xdg.desktopEntries = { + element-lmu = { + name = "Element (LMU)"; + exec = "element-desktop --profile=lmu %u"; + icon = "element"; + genericName = "Matrix Client"; + categories = [ "Network" "InstantMessaging" "Chat" ]; + settings = { + StartupWMClass = "Element"; + }; + }; + }; + fonts = { fontconfig.enable = true; lmu-hausschrift.enable = true; -- cgit v1.2.3