1

Compare commits

...

12 Commits

13 changed files with 171 additions and 18 deletions

View File

@ -210,6 +210,10 @@ Convert line endings to dos format
unix2dos <file>
$ file: eza -1
% tiddl
Download stuff from tidal
tiddl download --track-quality max --path ~/Downloads/Beet/Albums --videos none url "<url>"
; ===========================
; SECRETS
; ===========================

View File

@ -9,4 +9,5 @@
msty = pkgs.callPackage ./msty {};
unityhub = pkgs.callPackage ./unityhub {};
tidal-dl-ng = pkgs.callPackage ./tidal-dl-ng {};
tiddl = pkgs.callPackage ./tiddl {};
}

View File

@ -50,8 +50,8 @@
# });
tidalDlNg = pythonPkgs.buildPythonApplication rec {
pname = "tidal_dl_ng";
version = "0.33.0";
pname = "tidal_dl_ng_for_dj";
version = "0.33.2";
format = "pyproject";
# The official repo was deleted
@ -62,24 +62,20 @@
# sha256 = "sha256-PUT0anx1yivgXwW21jah7Rv1/BabOT+KPoW446NFNyg=";
# };
# Alternative repo
# src = pkgs.fetchFromGitHub {
# owner = "rodvicj";
# repo = "tidal_dl_ng-Project";
# rev = "4573142c76ef045ebf8e80c34657dd2bec96f17d";
# sha256 = "sha256-3sO2qj8V4KXOWK7vQsFAOYeTZo2rsc/M36SwRnC0oVg=";
# Package now also deleted from PyPi
# src = pythonPkgs.fetchPypi {
# inherit pname version;
# sha256 = "sha256-rOMyxnT7uVnMbn678DFtqAu4+Uc5VFGcqGI0jxplnpc=";
# };
# Package is still on PyPi
# TODO: Borked
# "For DJ"-Fork
src = pythonPkgs.fetchPypi {
inherit pname version;
sha256 = "sha256-rOMyxnT7uVnMbn678DFtqAu4+Uc5VFGcqGI0jxplnpc=";
sha256 = "sha256-605cgBqZV6L7sxWtEa4Ki+9hBqX4m3Rk+X5oY5bv/FQ=";
};
doCheck = false;
dontCheckRuntimeDeps = true;
catchConflicts = false;
strictDeps = false;
nativeBuildInputs = with pythonPkgs; [poetry-core setuptools];
@ -132,7 +128,7 @@
tidal-dl-ng-gui-desktopfile = pkgs.stdenv.mkDerivation {
pname = "tdng";
version = "0.31.3";
version = "0.33.2";
dontUnpack = true;
nativeBuildInputs = [pkgs.makeWrapper];

View File

@ -0,0 +1,60 @@
{
lib,
stdenv,
pkgs,
}: let
pythonPkgs = pkgs.python314Packages.overrideScope (self: super: {
typer = super.typer.overridePythonAttrs (old: {
version = "0.20.1";
src = pkgs.fetchPypi {
pname = "typer";
version = "0.20.0";
sha256 = "sha256-Gq9klAMXk+SHb7C6z6apErVRz0PB5jyADfixqGZyDDc=";
};
});
aiofiles = super.aiofiles.overridePythonAttrs (old: {
version = "25.1.0";
src = pkgs.fetchFromGitHub {
owner = "Tinche";
repo = "aiofiles";
tag = "v25.1.0";
hash = "sha256-NBmzoUb2una3+eWqR1HraVPibaRb9I51aYwskrjxskQ=";
};
# Build system changed in this version
build-system = with pythonPkgs; [
hatchling
hatch-vcs
];
});
});
in
pythonPkgs.buildPythonApplication rec {
pname = "tiddl";
version = "3.2.0";
format = "pyproject";
src = pythonPkgs.fetchPypi {
inherit pname version;
sha256 = "sha256-uLkGyIScYPqFgQdPAOYJDJG0jp+nDAwIl2kFkaJZFco=";
};
dontCheckRuntimeDeps = true;
build-system = with pythonPkgs; [
poetry-core
setuptools
];
propagatedBuildInputs = with pythonPkgs; [
# Nixpkgs
aiofiles
aiohttp
m3u8
mutagen
pydantic
requests
requests-cache
typer
];
}

View File

@ -478,6 +478,7 @@ in
systemctl-tui
restic # Backups
gnumake
just
# Hardware/Software info
pciutils # lspci
@ -499,7 +500,7 @@ in
imagemagick # Convert image (magic)
mp3val # Validate mp3 files
flac # Validate flac files
spotdl
# spotdl
# Document utils
poppler-utils # pdfunite
@ -560,7 +561,8 @@ in
audacity
ferdium
gparted
feishin
# feishin # electron :(
jellyfin-tui
# Office
kdePackages.wacomtablet # For xournalpp/krita

View File

@ -133,6 +133,7 @@
godot_4
(obs-studio.override {cudaSupport = true;})
kdePackages.kdenlive
# davinci-resolve
krita
makemkv
lrcget
@ -141,7 +142,8 @@
jellyfin-desktop
jellyfin-mpv-shim
# tidal-hifi
tidal-dl-ng # TODO: Borked
# tidal-dl-ng # TODO: Borked
tiddl
picard
handbrake
teamspeak6-client

View File

@ -69,6 +69,7 @@ in [
(mkBm "Rust" "https://doc.rust-lang.org/stable/book/ch03-00-common-programming-concepts.html")
(mkBm "RustOS" "https://os.phil-opp.com/")
(mkBm "Interpreters" "https://craftinginterpreters.com/contents.html")
(mkBm "Godbolt" "https://godbolt.org")
];
}
{

View File

@ -50,6 +50,7 @@ in {
typescript
vscode-langservers-extracted # includes nodejs
autotools-language-server
just-lsp
# Linters
checkstyle # java
@ -74,6 +75,8 @@ in {
rustfmt
stylua
typstyle
mbake
just-formatter
])
[
@ -513,8 +516,10 @@ in {
html = ["prettierd" "prettier"];
java = ["google-java-format"];
javascript = ["prettierd" "prettier"];
just = ["just"];
latex = ["tex-fmt"];
lua = ["stylua"];
make = ["bake"];
markdown = ["prettierd" "prettier"];
nix = ["alejandra"];
python = ["black"];
@ -878,6 +883,7 @@ in {
{name = "cmake";}
{name = "cssls";}
{name = "html";} # vscode-langservers-extracted
{name = "just-lsp";} # TODO: Doesn't autostart?
{name = "lua_ls";}
{
name = "ltex";
@ -1987,6 +1993,39 @@ in {
'';
};
visual-whitespace = rec {
name = "visual-whitespace";
pkg = pkgs.vimPlugins.visual-whitespace-nvim;
event = ["ModeChanged *:[vV\22]"];
config = mkDefaultConfig name;
opts = {
enabled = true;
highlight = {
link = "Visual";
default = true;
};
match_types = {
space = true;
tab = true;
nbsp = true;
lead = false;
trail = false;
};
list_chars = {
space = "·";
tab = "";
nbsp = "";
lead = "";
trail = "";
};
fileformat_chars = {
unix = "";
mac = "";
dos = "";
};
};
};
# wakatime = {
# name = "wakatime";
# pkg = pkgs.vimPlugins.vim-wakatime;
@ -2168,6 +2207,7 @@ in {
typst-preview # Typst support
ufo # Code folding
vimtex # LaTeX support
visual-whitespace
# wakatime # Time tracking
web-devicons # Icons for many plugins
which-key # Live keybinding help

View File

@ -28,6 +28,7 @@
../services/gitea.nix
../services/immich.nix
../services/jellyfin.nix
../services/kiwix.nix
../services/kopia.nix
../services/nextcloud.nix
../services/nginx-proxy-manager.nix

View File

@ -6,7 +6,7 @@
}: let
vectorchordVersion = "0.4.2";
pgvectorsVersion = "0.2.0";
immichVersion = "2.3.1";
immichVersion = "2.5.2";
in {
virtualisation.oci-containers.containers = {
immich-database = {

40
system/services/kiwix.nix Normal file
View File

@ -0,0 +1,40 @@
{
config,
lib,
pkgs,
...
}: let
kiwixVersion = "3.8.1";
in {
virtualisation.oci-containers.containers = {
kiwix = {
image = "ghcr.io/kiwix/kiwix-serve:${kiwixVersion}";
autoStart = true;
dependsOn = [];
ports = [
# "8080:80"
];
volumes = [
# TODO: Add network location for .zim files
"kiwix_data:/data"
];
environment = {
PUID = "1000";
PGID = "1000";
TZ = "Europe/Berlin";
};
cmd = ["*.zim"];
extraOptions = [
# "--privileged"
# "--device=nvidia.com/gpu=all"
"--net=behind-nginx"
];
};
};
}

View File

@ -26,6 +26,9 @@ in {
"80:80"
# "81:81" # Web interface
"443:443"
# TODO: Should probably split the nginx configs for ServeNix and ThinkNix
"5520:5520" # HyTale
];
volumes = [

View File

@ -126,6 +126,7 @@ in {
# (mkUDir ".nv" m755) # Unity
(mkUDir ".ollama" m755)
# (mkUDir ".plastic4" m755) # Unity
(mkUDir ".tiddl" m755)
(mkUDir ".var/app" m755)
(mkUDir ".vim/undo" m755)
(mkUDir ".zotero" m755)
@ -146,6 +147,7 @@ in {
(mkUDir ".config/fish/completions" m755)
(mkUDir ".config/impermanence" m755)
(mkUDir ".config/jellyfin-mpv-shim" m755)
(mkUDir ".config/jellyfin-tui" m755) # TODO: Generate this config file, have to use sops because it includes the password in cleartext
(mkUDir ".config/JetBrains" m755)
(mkUDir ".config/kdeconnect" m755)
(mkUDir ".config/keepassxc" m755)
@ -172,6 +174,7 @@ in {
(mkUDir ".local/share/fish" m755)
(mkUDir ".local/share/flatpak" m755)
(mkUDir ".local/share/jellyfin-desktop" m755)
(mkUDir ".local/share/jellyfin-tui" m755)
(mkUDir ".local/share/JetBrains" m755) # Unity
(mkUDir ".local/share/hyprland" m755)
(mkUDir ".local/share/keyrings" m755) # m700