This commit is contained in:
Dmitriy 2019-09-22 16:40:16 +04:00
parent bcb3862c89
commit bd47069dd6
9 changed files with 350 additions and 195 deletions

View File

@ -1,29 +0,0 @@
{ stdenv, fetchFromGitHub, coreutils, scrot, ffmpeg, gawk
, i3lock-color, getopt, fontconfig
}:
stdenv.mkDerivation rec {
rev = "c8f648c5e35178dd39ecc83094bf921752b7878b";
name = "i3lock-fancy-ffmpeg_rev${builtins.substring 0 7 rev}";
src = fetchFromGitHub {
owner = "rinfiyks";
repo = "i3lock-fancy";
inherit rev;
sha256 = "1pdvzi5d9p2r5md2g289j95333nkpb3ah3si91c5f6350swd8jmz";
};
patchPhase = ''
rm Makefile
'';
installPhase = ''
mkdir -p $out/bin $out/share/i3lock-fancy-ffmpeg/icons
cp i3lock-fancy $out/bin/i3lock-fancy-ffmpeg
cp icons/lock*.png $out/share/i3lock-fancy-ffmpeg/icons
'';
meta = with stdenv.lib; {
description = "i3lock is a bash script that takes a screenshot of the desktop, blurs the background and adds a lock icon and text.";
homepage = https://github.com/meskarune/i3lock-fancy;
maintainers = with maintainers; [ ];
license = licenses.mit;
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,37 @@
{ stdenv, fetchFromGitHub, coreutils, i3lock-color, getopt, fontconfig, ffmpeg_4, xorg }:
stdenv.mkDerivation rec {
rev = "c8f648c5e35178dd39ecc83094bf921752b7878b";
name = "i3lock-fancy-ffmpeg_rev${builtins.substring 0 7 rev}";
src = fetchFromGitHub {
owner = "rinfiyks";
repo = "i3lock-fancy";
inherit rev;
sha256 = "1pdvzi5d9p2r5md2g289j95333nkpb3ah3si91c5f6350swd8jmz";
};
buildInputs = [ i3lock-color xorg.xrandr ffmpeg_4 coreutils getopt fontconfig ];
patchPhase = ''
sed -i -e "s|(mktemp)|(${coreutils}/bin/mktemp)|" i3lock-fancy
sed -i -e "s|(xrandr)|(${xorg.xrandr}/bin/xrandr)|" i3lock-fancy
sed -i -e "s|'rm -f |'${coreutils}/bin/rm -f |" i3lock-fancy
sed -i -e "s|i3lock -i |${i3lock-color}/bin/i3lock-color -i |" i3lock-fancy
sed -i -e 's|lock_file="/usr/share/i3lock-fancy/lock.png"|lock_file="'$out'/share/i3lock-fancy/icons/lock.png"|' i3lock-fancy
sed -i -e "s|getopt |${getopt}/bin/getopt |" i3lock-fancy
sed -i -e "s|fc-match |${fontconfig.bin}/bin/fc-match |" i3lock-fancy
sed -i -e "s|fc-list |${fontconfig.bin}/bin/fc-list |" i3lock-fancy
sed -i -e "s|ffmpeg -f |${ffmpeg_4}/bin/ffmpeg -f |" i3lock-fancy
rm Makefile
'';
installPhase = ''
mkdir -p $out/bin $out/share/i3lock-fancy/icons
cp i3lock-fancy $out/bin/i3lock-fancy
cp icons/lock*.png $out/share/i3lock-fancy/icons
'';
meta = with stdenv.lib; {
description = "i3lock is a bash script that takes a screenshot of the desktop, blurs the background and adds a lock icon and text.";
homepage = https://github.com/meskarune/i3lock-fancy;
maintainers = with maintainers; [ ];
license = licenses.mit;
platforms = platforms.linux;
};
}

View File

@ -17,7 +17,7 @@ with deviceSpecific; {
lxqt.pavucontrol-qt lxqt.pavucontrol-qt
bibata-cursors bibata-cursors
i3lock-fancy-ffmpeg i3lock-fancy
# Samba support # Samba support
cifs-utils cifs-utils
# Utils # Utils
@ -39,7 +39,6 @@ with deviceSpecific; {
ranger ranger
youtube-dl youtube-dl
speedcrunch speedcrunch
libreoffice
feh feh
setroot setroot
maim maim
@ -51,12 +50,11 @@ with deviceSpecific; {
powertop powertop
# Other # Other
blueman blueman
] ++ lib.optionals (!isVM) [
libreoffice
]; ];
home-manager.users.alukard.home.packages = with pkgs; [ home-manager.users.alukard.home.packages = with pkgs; [
steam
steam-run
nix-zsh-completions nix-zsh-completions
qbittorrent qbittorrent
vscodium vscodium
@ -64,6 +62,9 @@ with deviceSpecific; {
tdesktop tdesktop
spotifywm spotifywm
discord discord
] ++ lib.optionals (!isVM) [
steam
steam-run
]; ];
} }

View File

@ -1,91 +0,0 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfgC = config.services.barrier.client;
cfgS = config.services.barrier.server;
in
{
options = {
services.barrier = {
client = {
enable = mkOption {
default = false;
description = "
Whether to enable the Barrier client (receive keyboard and mouse events from a Barrier server).
";
};
screenName = mkOption {
default = "";
description = ''
Use the given name instead of the hostname to identify
ourselves to the server.
'';
};
serverAddress = mkOption {
description = ''
The server address is of the form: [hostname][:port]. The
hostname must be the address or hostname of the server. The
port overrides the default port, 24800.
'';
};
autoStart = mkOption {
default = true;
type = types.bool;
description = "Whether the Barrier client should be started automatically.";
};
};
server = {
enable = mkOption {
default = false;
description = ''
Whether to enable the Barrier server (send keyboard and mouse events).
'';
};
configFile = mkOption {
default = "/etc/barrier-server.conf";
description = "The Barrier server configuration file.";
};
screenName = mkOption {
default = "";
description = ''
Use the given name instead of the hostname to identify
this screen in the configuration.
'';
};
address = mkOption {
default = "";
description = "Address on which to listen for clients.";
};
autoStart = mkOption {
default = true;
type = types.bool;
description = "Whether the Barrier server should be started automatically.";
};
};
};
};
config = mkMerge [
(mkIf cfgC.enable {
systemd.user.services."barrier-client" = {
after = [ "network.target" "graphical-session.target" ];
description = "Barrier client";
wantedBy = optional cfgC.autoStart "graphical-session.target";
path = [ pkgs.barrier ];
serviceConfig.ExecStart = ''${pkgs.barrier}/bin/barrierc -f ${optionalString (cfgC.screenName != "") "-n ${cfgC.screenName}"} ${cfgC.serverAddress}'';
serviceConfig.Restart = "on-failure";
};
})
(mkIf cfgS.enable {
systemd.user.services."barrier-server" = {
after = [ "network.target" "graphical-session.target" ];
description = "Barrier server";
wantedBy = optional cfgS.autoStart "graphical-session.target";
path = [ pkgs.barrier ];
serviceConfig.ExecStart = ''${pkgs.barrier}/bin/barriers -c ${cfgS.configFile} -f ${optionalString (cfgS.address != "") "-a ${cfgS.address}"} ${optionalString (cfgS.screenName != "") "-n ${cfgS.screenName}" }'';
serviceConfig.Restart = "on-failure";
};
})
];
}

View File

@ -21,7 +21,6 @@
# ./workspace/rclone.nix # ./workspace/rclone.nix
./workspace/xresources.nix ./workspace/xresources.nix
./workspace/barrier.nix ./workspace/barrier.nix
./barrier-conf.nix
./themes.nix ./themes.nix
./applications.nix ./applications.nix
./secrets.nix ./secrets.nix

View File

@ -4,8 +4,12 @@
rec { rec {
# nerdfonts = nur.balsoft.pkgs.roboto-mono-nerd; # nerdfonts = nur.balsoft.pkgs.roboto-mono-nerd;
youtube-to-mpv = pkgs.callPackage ./applications/youtube-to-mpv.nix {}; youtube-to-mpv = pkgs.callPackage ./applications/youtube-to-mpv.nix {};
i3lock-fancy-ffmpeg = pkgs.callPackage ./applications/i3lock-fancy-ffmpeg.nix {};
} }
) )
]; ];
nixpkgs.config = {
packageOverrides = pkgs: {
i3lock-fancy = pkgs.callPackage ./applications/i3lock-fancy.nix {};
};
};
} }

View File

@ -1,4 +1,93 @@
{ config, lib, pkgs, ... }: { { config, lib, pkgs, ... }:
with lib;
let
cfgC = config.services.barrier.client;
cfgS = config.services.barrier.server;
in
{
options = {
services.barrier = {
client = {
enable = mkOption {
default = false;
description = "
Whether to enable the Barrier client (receive keyboard and mouse events from a Barrier server).
";
};
screenName = mkOption {
default = "";
description = ''
Use the given name instead of the hostname to identify
ourselves to the server.
'';
};
serverAddress = mkOption {
description = ''
The server address is of the form: [hostname][:port]. The
hostname must be the address or hostname of the server. The
port overrides the default port, 24800.
'';
};
autoStart = mkOption {
default = true;
type = types.bool;
description = "Whether the Barrier client should be started automatically.";
};
};
server = {
enable = mkOption {
default = false;
description = ''
Whether to enable the Barrier server (send keyboard and mouse events).
'';
};
configFile = mkOption {
default = "/etc/barrier-server.conf";
description = "The Barrier server configuration file.";
};
screenName = mkOption {
default = "";
description = ''
Use the given name instead of the hostname to identify
this screen in the configuration.
'';
};
address = mkOption {
default = "";
description = "Address on which to listen for clients.";
};
autoStart = mkOption {
default = true;
type = types.bool;
description = "Whether the Barrier server should be started automatically.";
};
};
};
};
config = mkMerge [
(mkIf cfgC.enable {
systemd.user.services."barrier-client" = {
after = [ "network.target" "graphical-session.target" ];
description = "Barrier client";
wantedBy = optional cfgC.autoStart "graphical-session.target";
path = [ pkgs.barrier ];
serviceConfig.ExecStart = ''${pkgs.barrier}/bin/barrierc -f ${optionalString (cfgC.screenName != "") "-n ${cfgC.screenName}"} ${cfgC.serverAddress}'';
serviceConfig.Restart = "on-failure";
};
})
(mkIf cfgS.enable {
systemd.user.services."barrier-server" = {
after = [ "network.target" "graphical-session.target" ];
description = "Barrier server";
wantedBy = optional cfgS.autoStart "graphical-session.target";
path = [ pkgs.barrier ];
serviceConfig.ExecStart = ''${pkgs.barrier}/bin/barriers -c ${cfgS.configFile} -f ${optionalString (cfgS.address != "") "-a ${cfgS.address}"} ${optionalString (cfgS.screenName != "") "-n ${cfgS.screenName}" }'';
serviceConfig.Restart = "on-failure";
};
})
] // {
services.barrier = if config.device == "NixOS-VM" then { services.barrier = if config.device == "NixOS-VM" then {
server.enable = true; server.enable = true;
server.autoStart = true; server.autoStart = true;
@ -7,10 +96,10 @@
text = '' text = ''
section: screens section: screens
NixOS-VM: NixOS-VM:
Dell-Laptop: dell-ataraxia:
end end
section: links section: links
Dell-Laptop: dell-ataraxia:
right = NixOS-VM right = NixOS-VM
end end
section: options section: options
@ -23,4 +112,6 @@
client.enable = true; client.enable = true;
client.serverAddress = "NixOS-VM"; client.serverAddress = "NixOS-VM";
}; };
};
} }

View File

@ -4,6 +4,7 @@ let
apps = config.defaultApplications; apps = config.defaultApplications;
in { in {
environment.sessionVariables._JAVA_AWT_WM_NONREPARENTING = "1"; environment.sessionVariables._JAVA_AWT_WM_NONREPARENTING = "1";
home-manager.users.alukard.xsession.windowManager.i3 = { home-manager.users.alukard.xsession.windowManager.i3 = {
enable = true; enable = true;
package = pkgs.i3-gaps; package = pkgs.i3-gaps;
@ -19,9 +20,10 @@ in {
]; ];
"" = [{ class = "cantata"; }]; "" = [{ class = "cantata"; }];
}; };
bars = [ ];
fonts = [ "RobotoMono 9" ]; fonts = [ "RobotoMono 9" ];
bars = [ ];
colors = rec { colors = rec {
background = thm.bg; background = thm.bg;
unfocused = { unfocused = {
@ -49,7 +51,7 @@ in {
smartGaps = true; smartGaps = true;
smartBorders = "on"; smartBorders = "on";
}; };
focus.mouseWarping = true; focus.mouseWarping = false;
focus.followMouse = false; focus.followMouse = false;
modifier = "Mod4"; modifier = "Mod4";
window = { window = {
@ -61,16 +63,15 @@ in {
command = "border pixel 2px"; command = "border pixel 2px";
criteria = { window_role = "popup"; }; criteria = { window_role = "popup"; };
} }
{
command = "floating disable";
criteria = { class = "pavucontrol-qt"; };
}
]; ];
}; };
startup = map (a: { notification = false; } // a) [ startup = map (a: { notification = false; } // a) [
{ command = "${pkgs.xorg.xrdb}/bin/xrdb -merge ~/.Xresources"; } { command = "${pkgs.xorg.xrdb}/bin/xrdb -merge ~/.Xresources"; }
]; ];
keybindings = let keybindings = let
script = name: content: "exec ${pkgs.writeScript name content}";
workspaces = (builtins.genList (x: [ (toString x) (toString x) ]) 10)
++ [ [ "c" "" ] [ "t" "" ] [ "m" "" ] ];
moveMouse = '' moveMouse = ''
"sh -c 'eval `${pkgs.xdotool}/bin/xdotool \ "sh -c 'eval `${pkgs.xdotool}/bin/xdotool \
getactivewindow \ getactivewindow \
@ -82,45 +83,43 @@ in {
"${modifier}+w" = "exec ${apps.dmenu.cmd}"; "${modifier}+w" = "exec ${apps.dmenu.cmd}";
"${modifier}+Return" = "exec ${apps.term.cmd}"; "${modifier}+Return" = "exec ${apps.term.cmd}";
"${modifier}+e" = "exec ${apps.editor.cmd}"; "${modifier}+e" = "exec ${apps.editor.cmd}";
"${modifier}+y" = "exec ${pkgs.youtube-to-mpv}/bin/yt-mpv"; "${modifier}+l" = "layout toggle all";
"${modifier}+Shift+y" = "exec ${pkgs.youtube-to-mpv}/bin/yt-mpv --no-video";
"${modifier}+l" = "layout toggle"; "${modifier}+Left" = "focus child; focus left; ${moveMouse}";
"${modifier}+Left" = "focus child; focus left; exec ${moveMouse}"; "${modifier}+Right" = "focus child; focus right; ${moveMouse}";
"${modifier}+Right" = "focus child; focus right; exec ${moveMouse}"; "${modifier}+Up" = "focus child; focus up; ${moveMouse}";
"${modifier}+Up" = "focus child; focus up; exec ${moveMouse}"; "${modifier}+Down" = "focus child; focus down; ${moveMouse}";
"${modifier}+Down" = "focus child; focus down; exec ${moveMouse}"; "${modifier}+Control+Left" = "focus parent; focus left; ${moveMouse}";
"${modifier}+Control+Left" = "${modifier}+Control+Right" = "focus parent; focus right; ${moveMouse}";
"focus parent; focus left; exec ${moveMouse}"; "${modifier}+Control+Up" = "focus parent; focus up; ${moveMouse}";
"${modifier}+Control+Right" = "${modifier}+Control+Down" = "focus parent; focus down; ${moveMouse}";
"focus parent; focus right; exec ${moveMouse}";
"${modifier}+Control+Up" =
"focus parent; focus up; exec ${moveMouse}";
"${modifier}+Control+Down" =
"focus parent; focus down; exec ${moveMouse}";
"${modifier}+Shift+Up" = "move up"; "${modifier}+Shift+Up" = "move up";
"${modifier}+Shift+Down" = "move down"; "${modifier}+Shift+Down" = "move down";
"${modifier}+Shift+Right" = "move right"; "${modifier}+Shift+Right" = "move right";
"${modifier}+Shift+Left" = "move left"; "${modifier}+Shift+Left" = "move left";
"${modifier}+f" = "fullscreen toggle"; "${modifier}+f" = "fullscreen toggle";
"${modifier}+r" = "mode resize"; "${modifier}+r" = "mode resize";
"${modifier}+Shift+f" = "floating toggle"; "${modifier}+Shift+f" = "floating toggle";
"${modifier}+j" = "focus mode_toggle";
"${modifier}+d" = "exec ${apps.fm.cmd}"; "${modifier}+d" = "exec ${apps.fm.cmd}";
"${modifier}+Escape" = "exec ${apps.monitor.cmd}"; "${modifier}+Escape" = "exec ${apps.monitor.cmd}";
"${modifier}+Print" = "exec ${pkgs.maim}/bin/maim -s ~/Pictures/$(date +%s).png"; "${modifier}+y" = "exec ${pkgs.youtube-to-mpv}/bin/yt-mpv";
"${modifier}+Control+Print" = "exec ${pkgs.maim}/bin/maim -s | xclip -selection clipboard -t image/png"; "${modifier}+Shift+y" = "exec ${pkgs.youtube-to-mpv}/bin/yt-mpv --no-video";
"--release ${modifier}+Shift+Print" =
"exec ${pkgs.maim}/bin/maim ~/Pictures/$(date +%s).png"; "${modifier}+Print" = script "screenshot"
"--release ${modifier}+Control+Shift+Print" = "${pkgs.maim}/bin/maim Pictures/$(date +%s).png";
"exec ${pkgs.maim}/bin/maim | xclip -selection clipboard -t image/png"; "${modifier}+Control+Print" = script "screenshot-copy"
"${pkgs.maim}/bin/maim | xclip -selection clipboard -t image/png";
"--release ${modifier}+Shift+Print" = script "screenshot-area"
"${pkgs.maim}/bin/maim -s Pictures/$(date +%s).png";
"--release ${modifier}+Control+Shift+Print" = script "screenshot-area-copy"
"${pkgs.maim}/bin/maim -s | xclip -selection clipboard -t image/png";
"${modifier}+x" = "move workspace to output right"; "${modifier}+x" = "move workspace to output right";
"${modifier}+c" = "workspace ";
"${modifier}+Shift+c" = "move container to workspace ";
"${modifier}+t" = "workspace ";
"${modifier}+Shift+t" = "move container to workspace ";
"${modifier}+m" = "workspace ";
"${modifier}+Shift+m" = "move container to workspace ";
"${modifier}+k" = "exec '${pkgs.xorg.xkill}/bin/xkill'"; "${modifier}+k" = "exec '${pkgs.xorg.xkill}/bin/xkill'";
"${modifier}+F5" = "restart"; "${modifier}+F5" = "reload";
"${modifier}+Shift+F5" = "exit"; "${modifier}+Shift+F5" = "exit";
"${modifier}+Shift+h" = "layout splith"; "${modifier}+Shift+h" = "layout splith";
"${modifier}+Shift+v" = "layout splitv"; "${modifier}+Shift+v" = "layout splitv";
@ -128,21 +127,22 @@ in {
"${modifier}+v" = "split v"; "${modifier}+v" = "split v";
"${modifier}+F1" = "move to scratchpad"; "${modifier}+F1" = "move to scratchpad";
"${modifier}+F2" = "scratchpad show"; "${modifier}+F2" = "scratchpad show";
"${modifier}+i" = "${modifier}+F11" = "output * dpms off";
"exec sh -c 'xclip -selection clipboard -out | curl -F \"f:1=<-\" ix.io | xclip -selection clipboard -in'"; "${modifier}+F12" = "output * dpms on";
# "${modifier}+z" = "exec ${pkgs.lambda-launcher}/bin/lambda-launcher";
"XF86AudioPlay" = "exec ${pkgs.playerctl}/bin/playerctl play-pause"; "XF86AudioPlay" = "exec ${pkgs.playerctl}/bin/playerctl play-pause";
"XF86AudioNext" = "exec ${pkgs.playerctl}/bin/playerctl next"; "XF86AudioNext" = "exec ${pkgs.playerctl}/bin/playerctl next";
"XF86AudioPrev" = "exec ${pkgs.playerctl}/bin/playerctl previous"; "XF86AudioPrev" = "exec ${pkgs.playerctl}/bin/playerctl previous";
"--release button2" = "kill"; "--release button2" = "kill";
"--whole-window ${modifier}+button2" = "kill"; "--whole-window ${modifier}+button2" = "kill";
} // builtins.listToAttrs (builtins.genList (x: {
name = "${modifier}+${toString (x + 1)}"; } // builtins.listToAttrs (builtins.map (x: {
value = "workspace ${toString (x + 1)}"; name = "${modifier}+${builtins.elemAt x 0}";
}) 9) // builtins.listToAttrs (builtins.genList (x: { value = "workspace ${builtins.elemAt x 1}";
name = "${modifier}+Shift+${toString (x + 1)}"; }) workspaces) // builtins.listToAttrs (builtins.map (x: {
value = "move container to workspace ${toString (x + 1)}"; name = "${modifier}+Shift+${builtins.elemAt x 0}";
}) 9)); value = "move container to workspace ${builtins.elemAt x 1}";
}) workspaces));
keycodebindings = { keycodebindings = {
"122" = "exec ${pkgs.pamixer}/bin/pamixer -d 5"; "122" = "exec ${pkgs.pamixer}/bin/pamixer -d 5";
"123" = "exec ${pkgs.pamixer}/bin/pamixer -i 5"; "123" = "exec ${pkgs.pamixer}/bin/pamixer -i 5";

View File

@ -1,7 +1,150 @@
{ pkgs, config, lib, ... }: { { pkgs, config, lib, ... }:
with import ../../support.nix { inherit lib config; }; {
home-manager.users.alukard.home.file.".config/rofi/custom.rasi".text = ''
* {
red: rgba ( ${thmDec.red}, 100 % );
blue: rgba ( ${thmDec.blue}, 100 % );
lightfg: rgba ( ${thmDec.cyan}, 100 % );
lightbg: rgba ( ${thmDec.dark}, 100 % );
foreground: rgba ( ${thmDec.purple}, 100 % );
background: rgba ( ${thmDec.bg}, 100 % );
background-color: rgba ( ${thmDec.bg}, 0 % );
separatorcolor: @foreground;
border-color: @foreground;
selected-normal-foreground: @background;
selected-normal-background: @blue;
selected-active-foreground: @lightbg;
selected-active-background: @lightfg;
selected-urgent-foreground: @background;
selected-urgent-background: @red;
normal-foreground: @foreground;
normal-background: @background;
active-foreground: @blue;
active-background: @background;
urgent-foreground: @red;
urgent-background: @background;
alternate-normal-foreground: @foreground;
alternate-normal-background: @lightbg;
alternate-active-foreground: @blue;
alternate-active-background: @lightbg;
alternate-urgent-foreground: @red;
alternate-urgent-background: @lightbg;
spacing: 2;
}
window {
background-color: @background;
border: 1;
padding: 5;
}
mainbox {
border: 0;
padding: 0;
}
message {
border: 1px dash 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
textbox {
text-color: @foreground;
}
listview {
fixed-height: 0;
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: true;
padding: 2px 0px 0px ;
}
element {
border: 0;
padding: 1px ;
}
element normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
element normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
element normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
element selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
element selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
element selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
element alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
element alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
element alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
scrollbar {
width: 4px ;
border: 0;
handle-color: @normal-foreground;
handle-width: 8px ;
padding: 0;
}
sidebar {
border: 2px dash 0px 0px ;
border-color: @separatorcolor;
}
button {
spacing: 0;
text-color: @normal-foreground;
}
button selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
inputbar {
spacing: 0px;
text-color: @normal-foreground;
padding: 1px ;
children: [ prompt,textbox-prompt-colon,entry,case-indicator ];
}
case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
entry {
spacing: 0;
text-color: @normal-foreground;
}
prompt {
spacing: 0;
text-color: @normal-foreground;
}
textbox-prompt-colon {
expand: false;
str: ":";
margin: 0px 0.3000em 0.0000em 0.0000em ;
text-color: inherit;
}
'';
# TODO: отвязать от абсолютного пути (/home/user/...)
home-manager.users.alukard.programs.rofi = { home-manager.users.alukard.programs.rofi = {
enable = true; enable = true;
font = "Roboto Mono 14"; font = "Roboto Mono 14";
terminal = "\${rxvt_unicode}/bin/urxvt"; terminal = "\${rxvt_unicode}/bin/urxvt";
theme = "custom.rasi";
}; };
} }