add yazi plugins

This commit is contained in:
Patrick Neff 2025-01-30 05:28:16 +01:00
parent a15b75eec6
commit 000f15bb83
12 changed files with 115 additions and 38 deletions

View File

@ -664,11 +664,11 @@
"vanillatweaks": "vanillatweaks"
},
"locked": {
"lastModified": 1735390427,
"narHash": "sha256-M/uZbGQN2VLdr6G5ryFAaWYf+aebpckPSLiSBrYHsjE=",
"lastModified": 1738176483,
"narHash": "sha256-5OFdgUi3gQM77DG+J0pX1FUHs7b0Zwle+iI2xDlQveA=",
"ref": "refs/heads/master",
"rev": "f2da3bd27832b7e3bb2325e1a3238a874ebd95d9",
"revCount": 331,
"rev": "a63d5751c51d03beb5ee8c1e37346761c20b15f0",
"revCount": 333,
"type": "git",
"url": "ssh://git@git.gaja-group.com/gaja-group/minecraft-server-flake.git"
},
@ -1314,18 +1314,17 @@
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1734972138,
"narHash": "sha256-jB2XYyauqXobAt5WnyHZQ82niHZd/U+mrfMAQ1KjfBA=",
"ref": "fix",
"rev": "453e26d3f5210ee453abc4f103b5d2d6610632df",
"revCount": 370,
"type": "git",
"url": "file:///home/odie/Code/nix/packwiz"
"lastModified": 1737328283,
"narHash": "sha256-VmNsWzsFVNRciNIPUXUVos4cBdpawgN1/nPwMjNpx+0=",
"owner": "packwiz",
"repo": "packwiz",
"rev": "241f24b550f6fe838913a56bdd58bac2fc53254a",
"type": "github"
},
"original": {
"ref": "fix",
"type": "git",
"url": "file:///home/odie/Code/nix/packwiz"
"owner": "packwiz",
"repo": "packwiz",
"type": "github"
}
},
"placeholderapi-luckperms": {

View File

@ -149,7 +149,9 @@
inherit system;
};
in {
devShells.default = pkgs.mkShell {};
devShells.default = pkgs.mkShell {
packages = with pkgs; [((nixos{}).nixos-rebuild)];
};
});
inputs = {
@ -326,4 +328,11 @@
};
};
};
nixConfig = {
extra-substituters = [ "https://nix-community.cachix.org" ];
extra-trusted-public-keys = [
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
];
};
}

View File

@ -1,5 +1,5 @@
{lib,config,...}: lib.mkIf config.services.mpd.enable {
services.mpd = {
musicDirectory = "/mnt/media/Audio/Musik";
musicDirectory = "/mnt/net/svartalbenheim/media_data/media/Audio/Musik";
};
}

View File

@ -21,7 +21,7 @@ lib.mkIf config.programs.ssh.enable {
extraOptions = {
ProxyCommand = "openssl s_client -quiet -connect rz-de3.gaja-group.com:2222 -servername 10.100.100.170";
};
identityFile = "~/.ssh/id_ed25519_local";
#identityFile = "~/.ssh/id_ed25519_local";
#compression =false;
};
};

View File

@ -14,6 +14,7 @@
sensibleOnTop = true;
escapeTime = 0;
tmuxp.enable = true;
terminal = "xterm-kitty";
plugins = with pkgs.tmuxPlugins; [
sensible
yank

View File

@ -1,11 +1,65 @@
_: {
{ pkgs, ... }:
let
yazi-plugins = pkgs.fetchFromGitHub {
owner = "yazi-rs";
repo = "plugins";
rev = "02d18be03812415097e83c6a912924560e4cec6d";
hash = "sha256-1FZ8wcf2VVp6ZWY27vm1dUU1KAL32WwoYbNA/8RUAog=";
};
in
{
programs = {
yazi = {
enable = true;
enableZshIntegration = true;
shellWrapperName = "y";
plugins = {
chmod = "${yazi-plugins}/chmod.yazi";
full-border = "${yazi-plugins}/full-border.yazi";
git = "${yazi-plugins}/git.yazi";
smart-enter = "${yazi-plugins}/smart-enter.yazi";
starship = pkgs.fetchFromGitHub {
owner = "Rolv-Apneseth";
repo = "starship.yazi";
rev = "af8bf6f82165b83272b6501ce7445cf2c61fbf51";
hash = "sha256-L7MkZZqJ+t+A61ceC4Q1joLF6ytoWdgx9BwZWAGAoCA=";
};
mediainfo = pkgs.fetchFromGitHub {
owner = "boydaihungst";
repo = "mediainfo.yazi";
rev = "e2a7cfd750226ce4adc3acc42b4cf75c79fe9f0e";
hash = "sha256-MW0pawBT2S0rOoclCQahiYzLX5JZPuiALCG0ZzOqvM4=";
};
};
initLua = ''
require("full-border"):setup()
require("starship"):setup()
require("git"):setup()
require("smart-enter"):setup({
open_multi = true,
})
'';
settings = {
sort_by = "name";
sort_dir_first = true;
sort_reverse = false;
plugin = {
prepend_fetchers = [
{ id = "git"; name = "*"; run = "git"; }
{ id = "git"; name = "*/"; run = "git"; }
];
prepend_previewers = [
{ mime = "{image,audio,video}/*"; run = "mediainfo"; }
{ mime = "application/subrip"; run = "mediainfo"; }
];
};
};
keymap = {
manager.prepend_keymap = [
{ run = "cd /media/net/svartalbenheim/media_data/"; on = [ "g" "m" ]; desc = "Cd to media_data"; }
{ run = "cd /media/net/svartalbenheim/media_data/media/Video"; on = [ "g" "v" ]; desc = "Cd to media_data"; }
{ run = "cd /media/net/svartalbenheim/media_data/media/Audio"; on = [ "g" "a" ]; desc = "Cd to media_data"; }
{ run = "plugin smart-enter"; on = [ "l" ]; desc = "Enter the child directory, or open the file"; }
];
};
};

View File

@ -10,6 +10,9 @@
prowlarr = {
enable = true;
};
jellyseerr = {
enable = false;
};
};
networking.firewall.allowedTCPPorts = [
@ -18,6 +21,5 @@
"dotnet-sdk-6.0.428"
"aspnetcore-runtime-6.0.36"
];
};
}

View File

@ -37,7 +37,7 @@ in
dataDir = "/media/net/svartalbenheim/media_config/data/jellyfin";
cacheDir = "/media/net/svartalbenheim/media_config/cache/jellyfin";
};
users.users.jellyfin = {
users.users.jellyfin = mkIf config.services.jellyfin.enable {
inherit extraGroups;
};
networking.firewall = {

View File

@ -1,18 +1,18 @@
{
jellyfin-web = final: prev:
{
jellyfin-web = prev.jellyfin-web.overrideAttrs (finalAttrs: previousAttrs: {
installPhase = ''
runHook preInstall
jellyfin-web = final: prev:
{
jellyfin-web = prev.jellyfin-web.overrideAttrs (finalAttrs: previousAttrs: {
installPhase = ''
runHook preInstall
# this is the important line
sed -i "s#</head>#<script src=\"configurationpage?name=skip-intro-button.js\"></script></head>#" dist/index.html
# this is the important line
sed -i "s#</head>#<script src=\"configurationpage?name=skip-intro-button.js\"></script></head>#" dist/index.html
mkdir -p $out/share
cp -a dist $out/share/jellyfin-web
mkdir -p $out/share
cp -a dist $out/share/jellyfin-web
runHook postInstall
'';
});
};
runHook postInstall
'';
});
};
}

View File

@ -1,6 +1,7 @@
{ inputs
, outputs
, vars
, lib
, ...
}: {
imports = [
@ -40,4 +41,8 @@
PATH = "/home/${vars.username}/bin:$PATH";
};
};
sops = {
age.sshKeyPaths = lib.mkForce [];
age.keyFile = "/home/${vars.username}/.config/sops/age/keys.txt"; # must have no password!
};
}

View File

@ -19,6 +19,7 @@ let
"prowlarr.odie.home.arpa"
#"transmission.odie.home.arpa"
"deluge.odie.home.arpa"
"jellyseerr.odie.home.arpa"
];
};
in
@ -44,6 +45,8 @@ in
haproxy.domains
;
boot.kernelPackages = lib.mkForce pkgs.linuxKernel.packages.linux_rpi4;
networking = {
inherit (vars) hostName domain;
};
@ -136,6 +139,7 @@ in
use_backend be_prowlarr if { ssl_fc_sni prowlarr.odie.home.arpa }
use_backend be_transmission if { ssl_fc_sni transmission.odie.home.arpa }
use_backend be_deluge if { ssl_fc_sni deluge.odie.home.arpa }
use_backend be_jellyseerr if { ssl_fc_sni jellyseerr.odie.home.arpa }
default_backend be_null
@ -166,6 +170,9 @@ in
backend be_deluge
server server1 127.0.0.1:${builtins.toString config.services.deluge.web.port} maxconn 32
backend be_jellyseerr
server server1 127.0.0.1:5055 maxconn 32
'';
};
udev.extraRules = ''

View File

@ -5,17 +5,17 @@
systemd-boot.enable = false;
generic-extlinux-compatible.enable = false;
};
/*
kernelPackages = pkgs.linuxPackages_rpi4;
kernelParams = [ "snd_bcm2835.enable_headphones=1" "snd_bcm2835.enable_hdmi=1" "gpu_mem=128" ];
kernelParams = [ "snd_bcm2835.enable_headphones=1" "snd_bcm2835.enable_hdmi=1" ];
initrd.availableKernelModules = lib.mkDefault [
"vc4" "bcm2835_dma"
"vc4"
"bcm2835_dma"
"i2c_bcm2835"
"xhci_pci"
"usbhid"
"usb_storage"
];
/*
kernelPackages = pkgs.linuxPackages_rpi4;
*/
};