Compare commits
1 Commits
fix-zotero
...
cc7923c1da
| Author | SHA1 | Date | |
|---|---|---|---|
| cc7923c1da |
6
flake.lock
generated
6
flake.lock
generated
@@ -76,11 +76,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1774411715,
|
"lastModified": 1762095388,
|
||||||
"narHash": "sha256-mceIHtVMXpLAfr1W0VK9ceTBX5yKu4gGWpVbThWTsAA=",
|
"narHash": "sha256-7Q8LtcvKWHbP8znARRTOY2tpU5WoV6FHwp5TZJOI8Us=",
|
||||||
"owner": "9001",
|
"owner": "9001",
|
||||||
"repo": "copyparty",
|
"repo": "copyparty",
|
||||||
"rev": "26e663d111e39ca96c63702ad27a05b6736607cf",
|
"rev": "ac085b8149ff50e03d260128596dd130ed1c7cae",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
@@ -58,7 +58,7 @@
|
|||||||
lldap.pam.enable = true;
|
lldap.pam.enable = true;
|
||||||
nginx.enable = true;
|
nginx.enable = true;
|
||||||
slskd.enable = true;
|
slskd.enable = true;
|
||||||
# webdav.enable = true;
|
webdav.enable = true;
|
||||||
copyparty.enable = true;
|
copyparty.enable = true;
|
||||||
syncthing.enable = true;
|
syncthing.enable = true;
|
||||||
cache.enable = true;
|
cache.enable = true;
|
||||||
|
|||||||
@@ -77,9 +77,7 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
systemd.user.services.jellyfin-rpc = {
|
systemd.user.services.jellyfin-rpc = {
|
||||||
Unit.Requires = [ "jellyfin-rpc-configure.service" ];
|
|
||||||
Unit.After = [ "jellyfin-rpc-configure.service" ];
|
Unit.After = [ "jellyfin-rpc-configure.service" ];
|
||||||
Install.WantedBy = [ "default.target" ];
|
|
||||||
Service.ExecStart = lib.getExe pkgs.jellyfin-rpc;
|
Service.ExecStart = lib.getExe pkgs.jellyfin-rpc;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -1,18 +0,0 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
|
||||||
|
|
||||||
let cfg = config.sydnix.prism-launcher;
|
|
||||||
in {
|
|
||||||
options.sydnix.prism-launcher = {
|
|
||||||
enable = lib.mkEnableOption "Prism Launcher";
|
|
||||||
};
|
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
|
||||||
home.packages = [
|
|
||||||
pkgs.prismlauncher
|
|
||||||
];
|
|
||||||
|
|
||||||
sydnix.impermanence.directories = [
|
|
||||||
".local/share/PrismLauncher"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -34,7 +34,7 @@ in {
|
|||||||
home.sessionVariables = {
|
home.sessionVariables = {
|
||||||
ESHELL_ALIASES_FILE = pkgs.writeText "eshell-aliases" ''
|
ESHELL_ALIASES_FILE = pkgs.writeText "eshell-aliases" ''
|
||||||
alias cdp syd-project-cd
|
alias cdp syd-project-cd
|
||||||
alias jj jj --no-pager $*
|
alias js js --no-pager
|
||||||
${lib.concatMapAttrsStringSep
|
${lib.concatMapAttrsStringSep
|
||||||
"\n"
|
"\n"
|
||||||
(alias: value: "alias ${alias} ${value} $*")
|
(alias: value: "alias ${alias} ${value} $*")
|
||||||
|
|||||||
@@ -1,11 +0,0 @@
|
|||||||
;;;; Emacs Bookmark Format Version 1;;;; -*- coding: utf-8-emacs; mode: lisp-data -*-
|
|
||||||
;;; This format is meant to be slightly human-readable;
|
|
||||||
;;; nevertheless, you probably don't want to edit it.
|
|
||||||
;;; -*- End Of Bookmark File Format Version Stamp -*-
|
|
||||||
(("org-capture-last-stored"
|
|
||||||
(filename . "~/org/daily/2026-03-26.org")
|
|
||||||
(front-context-string . "* The significan")
|
|
||||||
(rear-context-string . "le: 2026-03-26\n\n")
|
|
||||||
(position . 89)
|
|
||||||
(last-modified 27077 32462 617656 528000))
|
|
||||||
)
|
|
||||||
@@ -1,7 +1,6 @@
|
|||||||
;;; -*- lexical-binding: t; -*-
|
;;; -*- lexical-binding: t; -*-
|
||||||
|
|
||||||
(require 'syd/base)
|
(require 'syd/base)
|
||||||
(require 'syd/handle)
|
|
||||||
(require 'syd/popups)
|
(require 'syd/popups)
|
||||||
(require 'syd/leader)
|
(require 'syd/leader)
|
||||||
|
|
||||||
@@ -27,8 +26,7 @@
|
|||||||
cider-doc-buffer)
|
cider-doc-buffer)
|
||||||
(defun syd-clojure-eval-region (beg end)
|
(defun syd-clojure-eval-region (beg end)
|
||||||
(cider-eval-region beg end))
|
(cider-eval-region beg end))
|
||||||
(syd-handle '(clojure-mode clojurescript-mode cider-repl-mode
|
(syd-handle '(clojure-mode clojurescript-mode cider-repl-mode)
|
||||||
cider-clojure-interaction-mode)
|
|
||||||
:docs #'cider-doc
|
:docs #'cider-doc
|
||||||
:eval-region #'syd-clojure-eval-region
|
:eval-region #'syd-clojure-eval-region
|
||||||
:load-buffer #'cider-load-buffer)
|
:load-buffer #'cider-load-buffer)
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
nil
|
|
||||||
@@ -13,14 +13,10 @@ in {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
imports = [
|
imports = [ ./copyparty/vault.nix ];
|
||||||
./copyparty/vault.nix
|
|
||||||
./copyparty/webdav.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
sydnix.deertopia.copyparty.vault.enable = true;
|
sydnix.deertopia.copyparty.vault.enable = true;
|
||||||
sydnix.deertopia.copyparty.webdav.enable = true;
|
|
||||||
|
|
||||||
sydnix.impermanence.directories = [
|
sydnix.impermanence.directories = [
|
||||||
"/var/lib/copyparty"
|
"/var/lib/copyparty"
|
||||||
@@ -33,8 +29,8 @@ in {
|
|||||||
"media"
|
"media"
|
||||||
];
|
];
|
||||||
|
|
||||||
# HACK: Make files created by copyparty.service initialise with
|
# HACK: Make files created by copyparty.service initialise with the mode
|
||||||
# the mode 775.
|
# 775.
|
||||||
systemd.services.copyparty.serviceConfig.UMask = lib.mkForce "002";
|
systemd.services.copyparty.serviceConfig.UMask = lib.mkForce "002";
|
||||||
|
|
||||||
services.copyparty = {
|
services.copyparty = {
|
||||||
@@ -60,7 +56,7 @@ in {
|
|||||||
"/Media library" = {
|
"/Media library" = {
|
||||||
path = "/media/library";
|
path = "/media/library";
|
||||||
# View and upload, but no deleting.
|
# View and upload, but no deleting.
|
||||||
access.r = "*";
|
access.rw = "*";
|
||||||
access.rwmd = "@jellyfin-admin";
|
access.rwmd = "@jellyfin-admin";
|
||||||
};
|
};
|
||||||
"/Torrents" = {
|
"/Torrents" = {
|
||||||
|
|||||||
@@ -36,12 +36,6 @@ in {
|
|||||||
access.A = [ "msyds" ];
|
access.A = [ "msyds" ];
|
||||||
access.rwmd = [ "zotero" ];
|
access.rwmd = [ "zotero" ];
|
||||||
};
|
};
|
||||||
"/msyds/zotero-root" = {
|
|
||||||
path = "/vault/msyds/zotero-root";
|
|
||||||
flags.daw = true;
|
|
||||||
access.A = [ "msyds" ];
|
|
||||||
access.rwmd = [ "zotero" ];
|
|
||||||
};
|
|
||||||
"/~msyds/public" = {
|
"/~msyds/public" = {
|
||||||
path = "/vault/~msyds/public";
|
path = "/vault/~msyds/public";
|
||||||
access.A = [ "msyds" ];
|
access.A = [ "msyds" ];
|
||||||
|
|||||||
@@ -1,57 +0,0 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
|
||||||
|
|
||||||
let cfg = config.sydnix.deertopia.copyparty.webdav;
|
|
||||||
in {
|
|
||||||
options.sydnix.deertopia.copyparty.webdav = {
|
|
||||||
enable = lib.mkEnableOption "WebDAV via copyparty";
|
|
||||||
port = lib.mkOption {
|
|
||||||
type = lib.types.port;
|
|
||||||
description = ''
|
|
||||||
Port on which Copyparty shall listen for WebDAV traffic.
|
|
||||||
'';
|
|
||||||
default = 3924;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# https://github.com/9001/copyparty/issues/1142
|
|
||||||
config = lib.mkIf cfg.enable {
|
|
||||||
services.copyparty.settings = {
|
|
||||||
rproxy = -1;
|
|
||||||
xff-src = "lan";
|
|
||||||
daw = true;
|
|
||||||
dav-auth = true;
|
|
||||||
ihead = "*";
|
|
||||||
ohead = "*";
|
|
||||||
dav-port = cfg.port;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.authelia.instances.deertopia.settings =
|
|
||||||
lib.mkIf config.sydnix.deertopia.authelia.enable {
|
|
||||||
access_control.rules = lib.mkBefore [
|
|
||||||
{
|
|
||||||
domain = "dav.deertopia.net";
|
|
||||||
policy = "bypass";
|
|
||||||
methods = [ "OPTIONS" "PROPFIND" ];
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
sydnix.deertopia.nginx.vhosts."dav" = {
|
|
||||||
directory = null;
|
|
||||||
vhost = {
|
|
||||||
forceSSL = true;
|
|
||||||
enableACME = true;
|
|
||||||
extraConfig = ''
|
|
||||||
include ${../authelia/authelia-location.conf};
|
|
||||||
# Increase limit of upload sizes.
|
|
||||||
client_max_body_size 20G;
|
|
||||||
'';
|
|
||||||
locations."/".extraConfig = ''
|
|
||||||
include ${../authelia/authelia-authrequest.conf};
|
|
||||||
include ${../authelia/proxy.conf};
|
|
||||||
proxy_pass http://localhost:${builtins.toString cfg.port};
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,8 +1,6 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
let
|
let cfg = config.sydnix.deertopia.gitea;
|
||||||
cfg = config.sydnix.deertopia.gitea;
|
|
||||||
commas = lib.concatStringsSep ",";
|
|
||||||
in {
|
in {
|
||||||
options.sydnix.deertopia.gitea = {
|
options.sydnix.deertopia.gitea = {
|
||||||
enable = lib.mkEnableOption "Gitea";
|
enable = lib.mkEnableOption "Gitea";
|
||||||
@@ -64,38 +62,6 @@ in {
|
|||||||
DISABLE_REGISTRATION = true;
|
DISABLE_REGISTRATION = true;
|
||||||
ENABLE_NOTIFY_MAIL = true;
|
ENABLE_NOTIFY_MAIL = true;
|
||||||
};
|
};
|
||||||
"repository.pull-request" = {
|
|
||||||
CLOSE_KEYWORDS = commas [
|
|
||||||
# en
|
|
||||||
"close" "closes" "closed" "fix" "fixes" "fixed" "resolve"
|
|
||||||
"resolves" "resolved"
|
|
||||||
# tok
|
|
||||||
"pini e"
|
|
||||||
# ko
|
|
||||||
"해결" "해결합니다" "해결했다"
|
|
||||||
"종료" "종료합니다" "중료한다" "중료해" "중료하다"
|
|
||||||
"수정" "수정했습니다" "중료한다" "중료해" "중료하다"
|
|
||||||
];
|
|
||||||
REOPEN_KEYWORDS = commas [
|
|
||||||
# en
|
|
||||||
"reopen" "reopens" "reopened"
|
|
||||||
# tok
|
|
||||||
"open sin e" "pakala sin e"
|
|
||||||
"li pakala sin" "li pakalan sin"
|
|
||||||
# ko
|
|
||||||
"재개" "재개합니다" "다시 열기" "다시 엽니다" "다시 여다"
|
|
||||||
"다시 연다"
|
|
||||||
];
|
|
||||||
WORK_IN_PROGRESS_PREFIXES = commas [
|
|
||||||
# en
|
|
||||||
"WIP:" "[WIP]"
|
|
||||||
# tok
|
|
||||||
"pini ala:" "awen pali:"
|
|
||||||
# ko
|
|
||||||
"공사 중:" "공사중:" "중:" "[중]" "中:" "[中]"
|
|
||||||
];
|
|
||||||
DEFAULT_MERGE_STYLE = "rebase";
|
|
||||||
};
|
|
||||||
mailer = {
|
mailer = {
|
||||||
ENABLED = true;
|
ENABLED = true;
|
||||||
FROM = "Gitea <no-reply@deertopia.net>";
|
FROM = "Gitea <no-reply@deertopia.net>";
|
||||||
|
|||||||
@@ -46,7 +46,6 @@
|
|||||||
kdeconnect.enable = true;
|
kdeconnect.enable = true;
|
||||||
qalculate.enable = true;
|
qalculate.enable = true;
|
||||||
toki-pona.enable = true;
|
toki-pona.enable = true;
|
||||||
prism-launcher.enable = true;
|
|
||||||
sops = {
|
sops = {
|
||||||
enable = true;
|
enable = true;
|
||||||
keyFile = "/persist/private-keys/age/crumb";
|
keyFile = "/persist/private-keys/age/crumb";
|
||||||
|
|||||||
Reference in New Issue
Block a user