move to using home-manager configured mpv

This commit is contained in:
Chris Cochrun 2024-12-25 07:07:18 -06:00
parent 1b8bee2df6
commit 18e2664c36

View file

@ -1,9 +1,10 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
let let
laptop = builtins.readFile "/etc/hostname" == "syl\n"; laptop = builtins.readFile "/etc/hostname" == ''
in syl
{ '';
in {
imports = [ imports = [
./modules/hyprland.nix ./modules/hyprland.nix
# ags.homeManagerModules.default # ags.homeManagerModules.default
@ -43,15 +44,11 @@ in
enable = true; enable = true;
config = { config = {
common = { common = {
default = [ default = [ pkgs.xdg-desktop-portal-kde ];
pkgs.xdg-desktop-portal-kde
];
"org.freedesktop.impl.portal.FileChooser" = [ "kde" ]; "org.freedesktop.impl.portal.FileChooser" = [ "kde" ];
}; };
hyprland = { hyprland = {
default = [ default = [ "hyprland" ];
"hyprland"
];
"org.freedesktop.impl.portal.FileChooser" = [ "kde" ]; "org.freedesktop.impl.portal.FileChooser" = [ "kde" ];
}; };
}; };
@ -136,9 +133,7 @@ in
# ''; # '';
# }; # };
programs.gpg = { programs.gpg = { enable = true; };
enable = true;
};
services.gpg-agent = { services.gpg-agent = {
enable = true; enable = true;
@ -148,9 +143,7 @@ in
# ''; # '';
}; };
qt = { qt = { enable = true; };
enable = true;
};
accounts.email = { accounts.email = {
maildirBasePath = "mail"; maildirBasePath = "mail";
@ -214,9 +207,7 @@ in
create = "maildir"; create = "maildir";
remove = "both"; remove = "both";
expunge = "both"; expunge = "both";
extraConfig.account = { extraConfig.account = { AuthMechs = "XOAUTH2"; };
AuthMechs = "XOAUTH2";
};
}; };
maildir.path = "office"; maildir.path = "office";
signature = { signature = {
@ -239,8 +230,7 @@ in
userEmail = "chris@cochrun.xyz"; userEmail = "chris@cochrun.xyz";
}; };
home.packages = with pkgs; [ home.packages = with pkgs; [ ];
];
programs.mu.enable = true; programs.mu.enable = true;
@ -256,8 +246,57 @@ in
plugins = [ pkgs.obs-studio-plugins.obs-move-transition ]; plugins = [ pkgs.obs-studio-plugins.obs-move-transition ];
}; };
home.file.".config/mpv" = { # home.file.".config/mpv" = {
source = ../.config/mpv; # source = ../.config/mpv;
# };
programs.mpv = {
enable = true;
scripts = with pkgs.mpvScripts; [
thumbfast
videoclip
mpris
quality-menu
modernx
modernx-zydezu
sponsorblock
];
config = {
osc = "no";
vo = "gpu";
af = "scaletempo2";
input-ipc-server = "/tmp/mpvsocket";
hwdec = "auto";
rtsp-transport = "udp";
speed = 1.95;
gpu-context = "wayland";
ytdl-format =
"bestvideo[height<=?720][fps<=?30][vcodec!=?vp9]+bestaudio/best";
};
profiles = {
fast.speed = 1.95;
slow.speed = 1;
wc = {
speed = 1;
osd-level = 0;
load-scripts = "no";
profile = "low-latency";
demuxer-lavf-format = "video4linux2";
demuxer-lavf-o-set =
"input_format=mjpeg,video_size=1920x1080,framerate=60";
fps = 60;
};
};
scriptOpts = {
videoclip = {
video_folder_path = "/home/chris/vids";
audio_folder_path = "/home/chris/music";
};
};
}; };
# home.file.".config/ags" = { # home.file.".config/ags" = {
@ -280,28 +319,39 @@ in
settings = { settings = {
devices = { devices = {
kaladin = { kaladin = {
id = (if laptop then "PMB4FRV-2CAPFCQ-UFELVNI-YAQRRHE-MMMXQ4P-RXEXBZV-QEUL6QN-KZEW5AM" else ""); id = (if laptop then
"PMB4FRV-2CAPFCQ-UFELVNI-YAQRRHE-MMMXQ4P-RXEXBZV-QEUL6QN-KZEW5AM"
else
"");
}; };
syl = { syl = {
id = (if laptop then "" else "AJMADOK-TENODAA-VSOEW2A-4RXY2XI-YNHIS7H-H3ZYAO5-3UQ64EE-O2N5BAY"); id = (if laptop then
""
else
"AJMADOK-TENODAA-VSOEW2A-4RXY2XI-YNHIS7H-H3ZYAO5-3UQ64EE-O2N5BAY");
}; };
shadow = { shadow = {
id = "B24VU6Z-URTMEXN-ZYKRWX7-XWSTHXD-XKX67EB-XSKMT4V-KWKGX7Q-W7DB2QV"; id =
"B24VU6Z-URTMEXN-ZYKRWX7-XWSTHXD-XKX67EB-XSKMT4V-KWKGX7Q-W7DB2QV";
}; };
tablet = { tablet = {
id = "4HEXCNH-MCVBZQX-LQ735TG-P2VTJ7N-CZ5MK4P-ICZAPC7-YCXVEWV-7NILMA5"; id =
"4HEXCNH-MCVBZQX-LQ735TG-P2VTJ7N-CZ5MK4P-ICZAPC7-YCXVEWV-7NILMA5";
}; };
kohlin = { kohlin = {
id = "BSWKBRR-2IJBCHA-UQY7DE7-CV2U2IL-PMFQFCJ-D5ZZJMU-FPYRUPC-MCC32QQ"; id =
"BSWKBRR-2IJBCHA-UQY7DE7-CV2U2IL-PMFQFCJ-D5ZZJMU-FPYRUPC-MCC32QQ";
}; };
dalinar = { dalinar = {
id = "MPRMA33-XHW6SRE-D2EDBCP-TSMRNGI-ZCE2TAN-FE4BMKA-PSKGYJW-CRIEJQL"; id =
"MPRMA33-XHW6SRE-D2EDBCP-TSMRNGI-ZCE2TAN-FE4BMKA-PSKGYJW-CRIEJQL";
}; };
}; };
folders = { folders = {
docs = { docs = {
path = "${config.home.homeDirectory}/docs"; path = "${config.home.homeDirectory}/docs";
devices = [ (if laptop then "kaladin" else "syl") "shadow" "dalinar" ]; devices =
[ (if laptop then "kaladin" else "syl") "shadow" "dalinar" ];
# versioning = { # versioning = {
# type = "staggered"; # type = "staggered";
# fsPath = "~/.local/share/syncthing/backup"; # fsPath = "~/.local/share/syncthing/backup";
@ -314,7 +364,8 @@ in
music = { music = {
id = "teqqy-rzvec"; id = "teqqy-rzvec";
path = "${config.home.homeDirectory}/music"; path = "${config.home.homeDirectory}/music";
devices = [ "dalinar" (if laptop then "kaladin" else "syl") "shadow" ]; devices =
[ "dalinar" (if laptop then "kaladin" else "syl") "shadow" ];
}; };
}; };
}; };
@ -430,9 +481,7 @@ in
}; };
dconf.settings = { dconf.settings = {
"org/gnome/desktop/interface" = { "org/gnome/desktop/interface" = { color-scheme = "prefer-dark"; };
color-scheme = "prefer-dark";
};
}; };
gtk = { gtk = {
@ -467,9 +516,7 @@ in
}; };
}; };
services.cliphist = { services.cliphist = { enable = true; };
enable = true;
};
home.file.".config/bottom" = { home.file.".config/bottom" = {
source = ../.config/bottom; source = ../.config/bottom;
@ -484,10 +531,8 @@ in
programs.firefox = { programs.firefox = {
enable = true; enable = true;
package = pkgs.firefox-wayland.override { package = pkgs.firefox-wayland.override {
nativeMessagingHosts = [ nativeMessagingHosts =
pkgs.plasma-browser-integration [ pkgs.plasma-browser-integration pkgs.tridactyl-native ];
pkgs.tridactyl-native
];
}; };
profiles.chris = { profiles.chris = {
name = "default"; name = "default";
@ -508,17 +553,14 @@ in
# Choose the order of the modules "custom/wintitle", # Choose the order of the modules "custom/wintitle",
modules-left = [ "hyprland/workspaces" "hyprland/window" ]; modules-left = [ "hyprland/workspaces" "hyprland/window" ];
modules-center = [ "clock" ]; modules-center = [ "clock" ];
modules-right = ["pulseaudio" "backlight" "disk" "memory" "cpu" "battery" "tray"]; modules-right =
[ "pulseaudio" "backlight" "disk" "memory" "cpu" "battery" "tray" ];
margin-top = if laptop then -5 else 5; margin-top = if laptop then -5 else 5;
margin-bottom = if laptop then 8 else 0; margin-bottom = if laptop then 8 else 0;
margin-left = 6; margin-left = 6;
margin-right = 6; margin-right = 6;
"hyprland/window" = { "hyprland/window" = { format = " <span style='italic'>{}</span>"; };
format = " <span style='italic'>{}</span>"; workspaces = { format = " {name} "; };
};
workspaces = {
format = " {name} ";
};
"hyprland/workspaces" = { "hyprland/workspaces" = {
format = "{icon}"; format = "{icon}";
format-icons = { format-icons = {
@ -541,16 +583,14 @@ in
spacing = 10; spacing = 10;
}; };
clock = { clock = {
tooltip-format = "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>"; tooltip-format = ''
<big>{:%Y %B}</big>
<tt><small>{calendar}</small></tt>'';
format-alt = "{:%Y-%m-%d}"; format-alt = "{:%Y-%m-%d}";
format = "{:%a %b %e, %I:%M %p}"; format = "{:%a %b %e, %I:%M %p}";
}; };
cpu = { cpu = { format = " {usage}%"; };
format = " {usage}%"; memory = { format = " {}%"; };
};
memory = {
format = " {}%";
};
temperature = { temperature = {
# "thermal-zone": 2, # "thermal-zone": 2,
# "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input", # "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
@ -853,9 +893,7 @@ tooltip label {
# source = ../.config/fish/config.fish; # source = ../.config/fish/config.fish;
# }; # };
home.file.".config/fish/functions" = { home.file.".config/fish/functions" = { source = ../.config/fish/functions; };
source = ../.config/fish/functions;
};
# programs.ags = { # programs.ags = {
# enable = true; # enable = true;
@ -1111,9 +1149,7 @@ end
start_zellij start_zellij
''; '';
}; };
environmentVariables = { environmentVariables = { EDITOR = ''"emacsclient -t"''; };
EDITOR = "\"emacsclient -t\"";
};
}; };
# home.file.".config/dunst" = { # home.file.".config/dunst" = {
@ -1153,7 +1189,9 @@ end
sort = "yes"; sort = "yes";
font = "VictorMono Nerd Font 10"; font = "VictorMono Nerd Font 10";
markup = "full"; markup = "full";
format = "<b>%s</b>\n%b"; format = ''
<b>%s</b>
%b'';
alignment = "center"; alignment = "center";
vertical_alignment = "center"; vertical_alignment = "center";
corner_radius = 18; corner_radius = 18;
@ -1180,7 +1218,6 @@ end
}; };
}; };
programs.atuin = { programs.atuin = {
enable = true; enable = true;
enableNushellIntegration = false; enableNushellIntegration = false;
@ -1229,9 +1266,7 @@ end
# source = ../.config/alacritty; # source = ../.config/alacritty;
# }; # };
home.file.".config/picom.conf" = { home.file.".config/picom.conf" = { source = ../.config/picom.conf; };
source = ../.config/picom.conf;
};
# home.file.".config/networkmanager-dmenu/config.ini" = { # home.file.".config/networkmanager-dmenu/config.ini" = {
# source = ../networkmanager-dmenu/config.ini; # source = ../networkmanager-dmenu/config.ini;
@ -1256,7 +1291,7 @@ end
sysuse = "systemctl --user"; sysuse = "systemctl --user";
myip = "curl icanhazip.com"; myip = "curl icanhazip.com";
nixs = "nix search nixpkgs"; nixs = "nix search nixpkgs";
ytd = "yt-dlp -o \"~/vids/%(title)s.%(ext)s\" $1"; ytd = ''yt-dlp -o "~/vids/%(title)s.%(ext)s" $1'';
}; };
programs.alacritty = { programs.alacritty = {
@ -1340,31 +1375,21 @@ end
show_notifications = true; show_notifications = true;
min_time_to_notify = 20000; min_time_to_notify = 20000;
}; };
time = { time = { format = "| $time"; };
format = "| $time"; status = { format = "| $status"; };
};
status = {
format = "| $status";
};
scan_timeout = 10; scan_timeout = 10;
rust = { rust = { format = "[$symbol($version )]($style)"; };
format = "[$symbol($version )]($style)";
};
cmake = { cmake = {
format = ""; format = "";
disabled = true; disabled = true;
}; };
nix_shell = { nix_shell = {
format = "[$symbol$state( \($name\))]($style) "; format = "[$symbol$state( ($name))]($style) ";
impure_msg = " "; impure_msg = " ";
pure_msg = " "; pure_msg = " ";
}; };
hostname = { hostname = { format = "@[$ssh_symbol$hostname]($style) > '"; };
format = "@[$ssh_symbol$hostname]($style) > '"; git_branch = { format = "[$symbol$branch(:$remote_branch)]($style) "; };
};
git_branch = {
format = "[$symbol$branch(:$remote_branch)]($style) ";
};
git_status = { git_status = {
format = "[\\[$all_status$ahead_behind\\]]($style) |(dimmed gray) "; format = "[\\[$all_status$ahead_behind\\]]($style) |(dimmed gray) ";
}; };
@ -1416,7 +1441,7 @@ end
suspend = "systemctl suspend"; suspend = "systemctl suspend";
sysuse = "systemctl --user"; sysuse = "systemctl --user";
myip = "curl icanhazip.com"; myip = "curl icanhazip.com";
ytd = "yt-dlp -o \"~/vids/%(title)s.%(ext)s\" $1"; ytd = ''yt-dlp -o "~/vids/%(title)s.%(ext)s" $1'';
}; };
initExtra = '' initExtra = ''
macchina macchina
@ -1430,7 +1455,13 @@ end
exec = "alacritty -e mpv --profile=slow %U"; exec = "alacritty -e mpv --profile=slow %U";
terminal = true; terminal = true;
categories = [ "Application" ]; categories = [ "Application" ];
mimeType = [ "audio/ogg" "audio/mpeg" "audio/opus" "audio/x-opus+ogg" "audio/x-wav" ]; mimeType = [
"audio/ogg"
"audio/mpeg"
"audio/opus"
"audio/x-opus+ogg"
"audio/x-wav"
];
}; };
imv-rifle = { imv-rifle = {
name = "IMV"; name = "IMV";
@ -1450,12 +1481,11 @@ end
}; };
Service = { Service = {
ExecStart = "/run/current-system/sw/bin/ydotoold --socket-path /tmp/ydotools"; ExecStart =
"/run/current-system/sw/bin/ydotoold --socket-path /tmp/ydotools";
}; };
Install = { Install = { WantedBy = [ "default.target" ]; };
WantedBy = ["default.target"];
};
}; };
jellyfin-mpv-shim = { jellyfin-mpv-shim = {
@ -1464,13 +1494,9 @@ end
After = "graphical-session-pre.target"; After = "graphical-session-pre.target";
}; };
Service = { Service = { ExecStart = "/run/current-system/sw/bin/jellyfin-mpv-shim"; };
ExecStart = "/run/current-system/sw/bin/jellyfin-mpv-shim";
};
Install = { Install = { WantedBy = [ "graphical-session.target" ]; };
WantedBy = ["graphical-session.target"];
};
}; };
# nextcloud-client = { # nextcloud-client = {