style waybar, add mpd module, other fixes

This commit is contained in:
tristan 2023-09-07 16:17:35 +01:00
parent 32500bffd0
commit ce1c48b4a4
8 changed files with 121 additions and 92 deletions

32
lib/modules/mpd.nix Normal file
View file

@ -0,0 +1,32 @@
{ user }: { lib, pkgs, config, ... }:
with lib;
let
cfg = config.roles.mpd;
in
{
options.roles.mpd = {
enable = mkEnableOption "setup mpd client";
host = mkOption {default = "music.local";};
};
config = mkIf cfg.enable {
home-manager.users.${user}.imports = [{
programs.ncmpcpp = {
enable = true;
settings.mpd_host = cfg.host;
bindings = [
{ key = "j"; command = "scroll_down"; }
{ key = "k"; command = "scroll_up"; }
{ key = "l"; command = "next_column"; }
{ key = "h"; command = "previous_column"; }
{ key = "J"; command = [ "select_item" "scroll_down" ]; }
{ key = "K"; command = [ "select_item" "scroll_up" ]; }
];
};
services.mpd-mpris = {
enable = true;
mpd.host = cfg.host;
};
}];
};
}

View file

@ -18,8 +18,8 @@ with lib;
home-manager.users.${user}.imports = [{
services.nextcloud-client.enable = true;
services.gnome-keyring.enable = true;
home.packages = with pkgs; [
nextcloud-client
godot_4
ardour
blender
@ -30,6 +30,20 @@ with lib;
transmission-remote-gtk
krita
];
accounts.calendar = {
basePath = "Calendars";
accounts."tristan@files.tristans.cloud" = {
primary = true;
remote = {
type = "caldav";
url = "https://files.tristans.cloud/remote.php/dav/";
userName = "tristan";
passwordCommand = [ "${pkgs.rbw}/bin/rbw" "get" "files.tristans.cloud" "tristan" ];
};
};
};
}];
};
}

View file

@ -101,30 +101,30 @@ in
submap = reset
workspace = 11, default:true
bind = SUPER,1,workspace,11
bind = SUPER,2,workspace,12
bind = SUPER,3,workspace,13
bind = SUPER,4,workspace,14
bind = SUPER,5,workspace,15
bind = SUPER,6,workspace,16
bind = SUPER,7,workspace,17
bind = SUPER,8,workspace,18
bind = SUPER,9,workspace,19
bind = SUPER,0,workspace,20
bind = SUPER,1,workspace,1
bind = SUPER,2,workspace,2
bind = SUPER,3,workspace,3
bind = SUPER,4,workspace,4
bind = SUPER,5,workspace,5
bind = SUPER,6,workspace,6
bind = SUPER,7,workspace,7
bind = SUPER,8,workspace,8
bind = SUPER,9,workspace,9
bind = SUPER,0,workspace,10
bind = SUPER,left,workspace,r-1
bind = SUPER,right,workspace,r+1
bind = SUPER_SHIFT,1,movetoworkspace,11
bind = SUPER_SHIFT,2,movetoworkspace,12
bind = SUPER_SHIFT,3,movetoworkspace,13
bind = SUPER_SHIFT,4,movetoworkspace,14
bind = SUPER_SHIFT,5,movetoworkspace,15
bind = SUPER_SHIFT,6,movetoworkspace,16
bind = SUPER_SHIFT,7,movetoworkspace,17
bind = SUPER_SHIFT,8,movetoworkspace,18
bind = SUPER_SHIFT,9,movetoworkspace,19
bind = SUPER_SHIFT,0,movetoworkspace,20
bind = SUPER_SHIFT,1,movetoworkspace,1
bind = SUPER_SHIFT,2,movetoworkspace,2
bind = SUPER_SHIFT,3,movetoworkspace,3
bind = SUPER_SHIFT,4,movetoworkspace,4
bind = SUPER_SHIFT,5,movetoworkspace,5
bind = SUPER_SHIFT,6,movetoworkspace,6
bind = SUPER_SHIFT,7,movetoworkspace,7
bind = SUPER_SHIFT,8,movetoworkspace,8
bind = SUPER_SHIFT,9,movetoworkspace,9
bind = SUPER_SHIFT,0,movetoworkspace,10
gestures {
workspace_swipe = yes
@ -149,6 +149,7 @@ in
}
general {
gaps_out = 10
resize_on_border = yes
layout = master
col.active_border = rgb(FFFF00) rgb(00FFFF) rgb(FF00FF)
@ -209,7 +210,7 @@ in
layer = "top";
position = "top";
height = 36;
modules-left = [ "hyprland/window" ];
modules-left = [ "hyprland/workspaces" "hyprland/window" ];
modules-right = [ "mpris" "pulseaudio" "clock" "tray" "battery" ];
clock = {
format = "📅 {:%a %b-%d %I:%M %p}";
@ -231,6 +232,9 @@ in
paused = "";
};
};
mpd = {
server = "music.local";
};
battery = {
format = "{icon} {capacity}%";
format-icons = [ "🤏" "🪫" "🔋" "🔋" ];
@ -245,6 +249,38 @@ in
enable = true;
target = "graphical-session.target";
};
style = ''
* {
min-height: 0;
text-shadow: 0 0 3px #080C39, 1px 1px black;
}
window#waybar {
font-size: small;
background: none;
}
#workspaces button {
border-radius: 1rem;
padding: 0px .5rem;
margin: 0px .5rem 0px 0px;
}
#workspaces button.active {
background: rgba(155,155,155,0.3);
}
.modules-right widget label {
padding: 0 1rem;
margin: 0 .5rem;
}
#tray {
min-width: 5rem;
}
'';
};