Configured bluetooth with blueman
Added font-awesome Added and configured waybar to replace swaybar as status bar, giving it a config not unlike that of swaybar previously
This commit is contained in:
parent
8a52644414
commit
97af92924a
6
home.nix
6
home.nix
|
|
@ -23,14 +23,14 @@ in
|
||||||
[ gcc tree-sitter ] ++ # Basic dev tools
|
[ gcc tree-sitter ] ++ # Basic dev tools
|
||||||
[ texliveFull ] ++ # TeX distribution
|
[ texliveFull ] ++ # TeX distribution
|
||||||
(with ocamlPackages; [ ocaml opam dune_3 dune-release merlin ocaml-lsp odoc ocamlformat utop ]) ++ # OCaml
|
(with ocamlPackages; [ ocaml opam dune_3 dune-release merlin ocaml-lsp odoc ocamlformat utop ]) ++ # OCaml
|
||||||
[ grim slurp wl-clipboard jq (callPackage ./pkgs/xdg-terminal-exec/xdg-terminal-exec.nix {}) ] ++ # Basic utilities
|
[ grim slurp wl-clipboard jq (callPackage ./pkgs/xdg-terminal-exec/xdg-terminal-exec.nix {}) blueman ] ++ # Basic utilities
|
||||||
[ bitwarden-cli ] ++ # Personalized selection of command-line (CLI/TUI) apps
|
[ bitwarden-cli ] ++ # Personalized selection of command-line (CLI/TUI) apps
|
||||||
[ terminal ] ++ # Terminal emulator
|
[ terminal ] ++ # Terminal emulator
|
||||||
[ firefox cinnamon.nemo gnome.file-roller cinnamon.nemo-fileroller imv vlc pavucontrol ] ++ # Basic graphical apps
|
[ firefox cinnamon.nemo gnome.file-roller cinnamon.nemo-fileroller imv vlc pavucontrol ] ++ # Basic graphical apps
|
||||||
[ libreoffice signal-desktop element-desktop prismlauncher mumble gimp inkscape ] ++ # Personalized selection of graphical apps
|
[ libreoffice signal-desktop element-desktop prismlauncher mumble gimp inkscape ] ++ # Personalized selection of graphical apps
|
||||||
[ (callPackage ./pkgs/mons/mons.nix {}) ] ++ # Games
|
[ (callPackage ./pkgs/mons/mons.nix {}) ] ++ # Games
|
||||||
[ swaybg bemenu j4-dmenu-desktop fcitx5-with-addons ] ++ # Sway- and Wayland-related packages
|
[ swaybg bemenu j4-dmenu-desktop fcitx5-with-addons ] ++ # Sway- and Wayland-related packages
|
||||||
[ noto-fonts redhat-official-fonts overpass ibm-plex ] ++ # Fonts
|
[ noto-fonts redhat-official-fonts overpass ibm-plex font-awesome ] ++ # Fonts
|
||||||
[ papirus-icon-theme ] ++ # Icons
|
[ papirus-icon-theme ] ++ # Icons
|
||||||
# [ vanilla-dmz ] ++ # Cursor
|
# [ vanilla-dmz ] ++ # Cursor
|
||||||
[ ];
|
[ ];
|
||||||
|
|
@ -60,6 +60,8 @@ in
|
||||||
|
|
||||||
wayland.windowManager.sway = import ./programs/sway.nix { inherit scripts extra config lib pkgs terminal; };
|
wayland.windowManager.sway = import ./programs/sway.nix { inherit scripts extra config lib pkgs terminal; };
|
||||||
|
|
||||||
|
programs.waybar = import ./programs/waybar.nix { inherit scripts config lib pkgs terminal; };
|
||||||
|
|
||||||
programs.swaylock = {
|
programs.swaylock = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
|
|
||||||
|
|
@ -25,9 +25,9 @@ in {
|
||||||
scroll_factor = "0.5";
|
scroll_factor = "0.5";
|
||||||
};
|
};
|
||||||
bars = let config = config; in [{
|
bars = let config = config; in [{
|
||||||
|
command = "${pkgs.lib.getExe pkgs.waybar}";
|
||||||
position = "top";
|
position = "top";
|
||||||
inherit fonts;
|
inherit fonts;
|
||||||
statusCommand = "${pkgs.i3status}/bin/i3status";
|
|
||||||
}];
|
}];
|
||||||
window = {
|
window = {
|
||||||
border = 2;
|
border = 2;
|
||||||
|
|
|
||||||
111
programs/waybar.nix
Normal file
111
programs/waybar.nix
Normal file
|
|
@ -0,0 +1,111 @@
|
||||||
|
{ scripts, config, lib, pkgs, terminal, ... } :
|
||||||
|
|
||||||
|
let
|
||||||
|
terminalExec = "${pkgs.lib.getExe terminal} -e";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
enable = true;
|
||||||
|
settings = [{
|
||||||
|
modules-left = [ "sway/workspaces" ];
|
||||||
|
modules-right = [ "pulseaudio" "bluetooth" "network" "cpu" "memory" "disk" "battery" "tray" "clock" ];
|
||||||
|
"sway/workspaces" = {
|
||||||
|
enable-bar-scroll = true;
|
||||||
|
disable-scroll-wraparound = true;
|
||||||
|
smooth-scrolling-threshold = 2.0;
|
||||||
|
};
|
||||||
|
pulseaudio = {
|
||||||
|
format = "{volume}% {icon} {format_source}";
|
||||||
|
format-bluetooth = "{volume}% {icon} {format_source}";
|
||||||
|
format-muted = "{volume}% {format_source}";
|
||||||
|
format-source = "{volume}% ";
|
||||||
|
format-source-muted = "{volume}% ";
|
||||||
|
format-icons = [ "" "" ];
|
||||||
|
on-click = "exec wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle";
|
||||||
|
on-click-right = "exec wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle";
|
||||||
|
on-click-middle = "exec pavucontrol";
|
||||||
|
};
|
||||||
|
network = {
|
||||||
|
format-wifi = "{essid} ({signalStrength}%) ";
|
||||||
|
format-ethernet = "{ipaddr}/{cidr} ";
|
||||||
|
tooltip-format = "{ifname} via {gwaddr} ";
|
||||||
|
format-linked = "{ifname} (No IP) ";
|
||||||
|
format-disconnected = "Disconnected ⚠";
|
||||||
|
format-alt = "{ifname}: {ipaddr}/{cidr}";
|
||||||
|
on-click-right = "exec ${terminalExec} nmtui";
|
||||||
|
};
|
||||||
|
bluetooth = {
|
||||||
|
format = " {status}";
|
||||||
|
format-disabled = ""; # hide module
|
||||||
|
format-connected = " {num_connections}";
|
||||||
|
tooltip-format = "{controller_alias}\t{controller_address}";
|
||||||
|
tooltip-format-connected = "{controller_alias}\t{controller_address}\n\n{device_enumerate}";
|
||||||
|
tooltip-format-enumerate-connected = "{device_alias}\t{device_address}";
|
||||||
|
on-click = "exec blueman-manager";
|
||||||
|
on-click-right = "exec bluetoothctl disconnect";
|
||||||
|
};
|
||||||
|
cpu = {
|
||||||
|
format = "{usage}% ";
|
||||||
|
};
|
||||||
|
memory = {
|
||||||
|
format = "{used:0.1f}GB/{total:0.1f}GB ";
|
||||||
|
};
|
||||||
|
disk = {
|
||||||
|
format = "{used} ";
|
||||||
|
path = "/";
|
||||||
|
};
|
||||||
|
battery = {
|
||||||
|
states = {
|
||||||
|
good = 95;
|
||||||
|
warning = 20;
|
||||||
|
critical = 10;
|
||||||
|
};
|
||||||
|
format = "{capacity}% {icon}";
|
||||||
|
format-charging = "{capacity}% ";
|
||||||
|
format-plugged = "{capacity}% ";
|
||||||
|
format-alt = "{time} {icon}";
|
||||||
|
format-icons = [ "" "" "" "" "" ];
|
||||||
|
};
|
||||||
|
tray = {
|
||||||
|
icon-size = 20;
|
||||||
|
spacing = 5;
|
||||||
|
};
|
||||||
|
clock = {
|
||||||
|
format = "{:%H:%M:%S %a %F}";
|
||||||
|
tooltip-format = "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>";
|
||||||
|
};
|
||||||
|
}];
|
||||||
|
style = ''
|
||||||
|
* {
|
||||||
|
font-family: FontAwesome, Red Hat Display, sans-serif;
|
||||||
|
font-size: 12pt;
|
||||||
|
min-height: 19pt;
|
||||||
|
}
|
||||||
|
'' +
|
||||||
|
''
|
||||||
|
window#waybar {
|
||||||
|
background: rgba(43, 48, 59, 0.9);
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
'' +
|
||||||
|
''
|
||||||
|
#workspaces button {
|
||||||
|
padding: 0 3px;
|
||||||
|
background: rgba(34, 34, 34, 1);
|
||||||
|
border-radius: 0;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
'' +
|
||||||
|
''
|
||||||
|
#workspaces button.focused {
|
||||||
|
background: rgba(40, 85, 119, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.modules-right label,
|
||||||
|
.modules-right box {
|
||||||
|
border-left: 1px solid black;
|
||||||
|
padding-left: 5px;
|
||||||
|
padding-right: 5px;
|
||||||
|
}
|
||||||
|
'' +
|
||||||
|
"";
|
||||||
|
}
|
||||||
Loading…
Reference in a new issue