Move MPV into a module
This commit is contained in:
parent
659fdc8bbb
commit
a248adce22
|
@ -9,6 +9,7 @@
|
|||
./programs/evince
|
||||
./programs/git
|
||||
./programs/keeweb
|
||||
./programs/mpv
|
||||
./services/dunst
|
||||
./services/espanso
|
||||
./services/grobi
|
||||
|
|
101
home-manager/modules/programs/mpv/default.nix
Normal file
101
home-manager/modules/programs/mpv/default.nix
Normal file
|
@ -0,0 +1,101 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
cfg = config.programs.az-mpv;
|
||||
delete-file = (pkgs.stdenvNoCC.mkDerivation rec {
|
||||
name = "mpv-delete-file";
|
||||
src = pkgs.fetchurl {
|
||||
url = "https://git.2li.ch/various/mpv-scripts/raw/commit/19ea069abcb794d1bf8fac2f59b50d71ab992130/delete_file.lua";
|
||||
sha256 = "sha256-1FX23t+O1aFZnbuvl+9zDT8OcKEziWNGj5cAMSvRIas=";
|
||||
};
|
||||
dontBuild = true;
|
||||
dontUnpack = true;
|
||||
installPhase = ''
|
||||
install -Dm644 ${src} $out/share/mpv/scripts/delete_file.lua
|
||||
'';
|
||||
passthru.scriptName = "delete_file.lua";
|
||||
});
|
||||
in
|
||||
{
|
||||
options = {
|
||||
programs.az-mpv.enable = lib.mkEnableOption "Enable MPV.";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
programs.mpv = {
|
||||
enable = true;
|
||||
bindings = {
|
||||
s = "playlist-shuffle";
|
||||
r = "cycle_values video-rotate 90 180 270 0";
|
||||
};
|
||||
config = {
|
||||
"keepaspect-window" = "no";
|
||||
};
|
||||
scripts = [ delete-file ];
|
||||
};
|
||||
|
||||
xdg.mimeApps = {
|
||||
enable = true;
|
||||
associations.added = {
|
||||
"inode/directory" = [ "mpv.desktop" ];
|
||||
};
|
||||
defaultApplications = {
|
||||
"application/mxf" = "mpv.desktop";
|
||||
"application/sdp" = "mpv.desktop";
|
||||
"application/smil" = "mpv.desktop";
|
||||
"application/streamingmedia" = "mpv.desktop";
|
||||
"application/vnd.apple.mpegurl" = "mpv.desktop";
|
||||
"application/vnd.ms-asf" = "mpv.desktop";
|
||||
"application/vnd.rn-realmedia" = "mpv.desktop";
|
||||
"application/vnd.rn-realmedia-vbr" = "mpv.desktop";
|
||||
"application/x-cue" = "mpv.desktop";
|
||||
"application/x-extension-m4a" = "mpv.desktop";
|
||||
"application/x-extension-mp4" = "mpv.desktop";
|
||||
"application/x-matroska" = "mpv.desktop";
|
||||
"application/x-mpegurl" = "mpv.desktop";
|
||||
"application/x-ogm" = "mpv.desktop";
|
||||
"application/x-ogm-video" = "mpv.desktop";
|
||||
"application/x-shorten" = "mpv.desktop";
|
||||
"application/x-smil" = "mpv.desktop";
|
||||
"application/x-streamingmedia" = "mpv.desktop";
|
||||
"video/3gp" = "mpv.desktop";
|
||||
"video/3gpp" = "mpv.desktop";
|
||||
"video/3gpp2" = "mpv.desktop";
|
||||
"video/avi" = "mpv.desktop";
|
||||
"video/divx" = "mpv.desktop";
|
||||
"video/dv" = "mpv.desktop";
|
||||
"video/fli" = "mpv.desktop";
|
||||
"video/flv" = "mpv.desktop";
|
||||
"video/mkv" = "mpv.desktop";
|
||||
"video/mp2t" = "mpv.desktop";
|
||||
"video/mp4" = "mpv.desktop";
|
||||
"video/mp4v-es" = "mpv.desktop";
|
||||
"video/mpeg" = "mpv.desktop";
|
||||
"video/msvideo" = "mpv.desktop";
|
||||
"video/ogg" = "mpv.desktop";
|
||||
"video/quicktime" = "mpv.desktop";
|
||||
"video/vnd.divx" = "mpv.desktop";
|
||||
"video/vnd.mpegurl" = "mpv.desktop";
|
||||
"video/vnd.rn-realvideo" = "mpv.desktop";
|
||||
"video/webm" = "mpv.desktop";
|
||||
"video/x-avi" = "mpv.desktop";
|
||||
"video/x-flc" = "mpv.desktop";
|
||||
"video/x-flic" = "mpv.desktop";
|
||||
"video/x-flv" = "mpv.desktop";
|
||||
"video/x-m4v" = "mpv.desktop";
|
||||
"video/x-matroska" = "mpv.desktop";
|
||||
"video/x-mpeg2" = "mpv.desktop";
|
||||
"video/x-mpeg3" = "mpv.desktop";
|
||||
"video/x-ms-afs" = "mpv.desktop";
|
||||
"video/x-ms-asf" = "mpv.desktop";
|
||||
"video/x-ms-wmv" = "mpv.desktop";
|
||||
"video/x-ms-wmx" = "mpv.desktop";
|
||||
"video/x-ms-wvxvideo" = "mpv.desktop";
|
||||
"video/x-msvideo" = "mpv.desktop";
|
||||
"video/x-ogm" = "mpv.desktop";
|
||||
"video/x-ogm+ogg" = "mpv.desktop";
|
||||
"video/x-theora" = "mpv.desktop";
|
||||
"video/x-theora+ogg" = "mpv.desktop";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -2,7 +2,6 @@
|
|||
{
|
||||
imports = [
|
||||
"${inputs.self}/home-manager/modules"
|
||||
"${inputs.self}/home-manager/software/mpv"
|
||||
"${inputs.self}/home-manager/software/nitrogen"
|
||||
"${inputs.self}/home-manager/software/obsidian"
|
||||
"${inputs.self}/home-manager/software/rapid-photo-downloader"
|
||||
|
@ -44,6 +43,7 @@
|
|||
az-evince.enable = true;
|
||||
az-git.enable = true;
|
||||
az-keeweb.enable = true;
|
||||
az-mpv.enable = true;
|
||||
bash = {
|
||||
enable = true;
|
||||
bashrcExtra = ''
|
||||
|
|
|
@ -1,95 +0,0 @@
|
|||
{ lib, pkgs, ... }:
|
||||
let
|
||||
delete-file = (pkgs.stdenvNoCC.mkDerivation rec {
|
||||
name = "mpv-delete-file";
|
||||
src = pkgs.fetchurl {
|
||||
url = "https://git.2li.ch/various/mpv-scripts/raw/commit/19ea069abcb794d1bf8fac2f59b50d71ab992130/delete_file.lua";
|
||||
sha256 = "sha256-1FX23t+O1aFZnbuvl+9zDT8OcKEziWNGj5cAMSvRIas=";
|
||||
};
|
||||
dontBuild = true;
|
||||
dontUnpack = true;
|
||||
installPhase = ''
|
||||
install -Dm644 ${src} $out/share/mpv/scripts/delete_file.lua
|
||||
'';
|
||||
passthru.scriptName = "delete_file.lua";
|
||||
});
|
||||
in
|
||||
{
|
||||
programs.mpv = {
|
||||
enable = true;
|
||||
bindings = {
|
||||
s = "playlist-shuffle";
|
||||
r = "cycle_values video-rotate 90 180 270 0";
|
||||
};
|
||||
config = {
|
||||
"keepaspect-window" = "no";
|
||||
};
|
||||
scripts = [ delete-file ];
|
||||
};
|
||||
|
||||
xdg.mimeApps = {
|
||||
enable = true;
|
||||
associations.added = {
|
||||
"inode/directory" = [ "mpv.desktop" ];
|
||||
};
|
||||
defaultApplications = {
|
||||
"application/mxf" = "mpv.desktop";
|
||||
"application/sdp" = "mpv.desktop";
|
||||
"application/smil" = "mpv.desktop";
|
||||
"application/streamingmedia" = "mpv.desktop";
|
||||
"application/vnd.apple.mpegurl" = "mpv.desktop";
|
||||
"application/vnd.ms-asf" = "mpv.desktop";
|
||||
"application/vnd.rn-realmedia" = "mpv.desktop";
|
||||
"application/vnd.rn-realmedia-vbr" = "mpv.desktop";
|
||||
"application/x-cue" = "mpv.desktop";
|
||||
"application/x-extension-m4a" = "mpv.desktop";
|
||||
"application/x-extension-mp4" = "mpv.desktop";
|
||||
"application/x-matroska" = "mpv.desktop";
|
||||
"application/x-mpegurl" = "mpv.desktop";
|
||||
"application/x-ogm" = "mpv.desktop";
|
||||
"application/x-ogm-video" = "mpv.desktop";
|
||||
"application/x-shorten" = "mpv.desktop";
|
||||
"application/x-smil" = "mpv.desktop";
|
||||
"application/x-streamingmedia" = "mpv.desktop";
|
||||
"video/3gp" = "mpv.desktop";
|
||||
"video/3gpp" = "mpv.desktop";
|
||||
"video/3gpp2" = "mpv.desktop";
|
||||
"video/avi" = "mpv.desktop";
|
||||
"video/divx" = "mpv.desktop";
|
||||
"video/dv" = "mpv.desktop";
|
||||
"video/fli" = "mpv.desktop";
|
||||
"video/flv" = "mpv.desktop";
|
||||
"video/mkv" = "mpv.desktop";
|
||||
"video/mp2t" = "mpv.desktop";
|
||||
"video/mp4" = "mpv.desktop";
|
||||
"video/mp4v-es" = "mpv.desktop";
|
||||
"video/mpeg" = "mpv.desktop";
|
||||
"video/msvideo" = "mpv.desktop";
|
||||
"video/ogg" = "mpv.desktop";
|
||||
"video/quicktime" = "mpv.desktop";
|
||||
"video/vnd.divx" = "mpv.desktop";
|
||||
"video/vnd.mpegurl" = "mpv.desktop";
|
||||
"video/vnd.rn-realvideo" = "mpv.desktop";
|
||||
"video/webm" = "mpv.desktop";
|
||||
"video/x-avi" = "mpv.desktop";
|
||||
"video/x-flc" = "mpv.desktop";
|
||||
"video/x-flic" = "mpv.desktop";
|
||||
"video/x-flv" = "mpv.desktop";
|
||||
"video/x-m4v" = "mpv.desktop";
|
||||
"video/x-matroska" = "mpv.desktop";
|
||||
"video/x-mpeg2" = "mpv.desktop";
|
||||
"video/x-mpeg3" = "mpv.desktop";
|
||||
"video/x-ms-afs" = "mpv.desktop";
|
||||
"video/x-ms-asf" = "mpv.desktop";
|
||||
"video/x-ms-wmv" = "mpv.desktop";
|
||||
"video/x-ms-wmx" = "mpv.desktop";
|
||||
"video/x-ms-wvxvideo" = "mpv.desktop";
|
||||
"video/x-msvideo" = "mpv.desktop";
|
||||
"video/x-ogm" = "mpv.desktop";
|
||||
"video/x-ogm+ogg" = "mpv.desktop";
|
||||
"video/x-theora" = "mpv.desktop";
|
||||
"video/x-theora+ogg" = "mpv.desktop";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user