chore(?): hm
This commit is contained in:
@@ -7,6 +7,9 @@
|
||||
let
|
||||
inherit (lib) mkIf mkEnableOption;
|
||||
cfg = config.home.programs.mpv;
|
||||
inherit (config.xdg.userDirs) videos;
|
||||
inherit (config.home) homeDirectory;
|
||||
shaders_dir = "${pkgs.mpv-shim-default-shaders}/share/mpv-shim-default-shaders/shaders";
|
||||
in
|
||||
{
|
||||
options = {
|
||||
@@ -15,8 +18,71 @@ in
|
||||
config = mkIf cfg.enable {
|
||||
programs.mpv = {
|
||||
enable = true;
|
||||
defaultProfiles = [ "gpu-hq" ];
|
||||
scripts = [ pkgs.mpvScripts.mpris ];
|
||||
config = {
|
||||
profile = "gpu-hq";
|
||||
gpu-context = "wayland";
|
||||
vo = "gpu-next";
|
||||
video-sync = "display-resample";
|
||||
interpolation = true;
|
||||
tscale = "oversample";
|
||||
fullscreen = false;
|
||||
keep-open = true;
|
||||
sub-auto = "fuzzy";
|
||||
sub-font = "Noto Sans Medium";
|
||||
sub-blur = 10;
|
||||
|
||||
screenshot-format = "png";
|
||||
|
||||
title = "\${filename} - mpv";
|
||||
script-opts = "osc-title=\${filename},osc-boxalpha=150,osc-visibility=never,osc-boxvideo=yes";
|
||||
ytdl-format = "bestvideo[height<=?1440]+bestaudio/best";
|
||||
ao = "pipewire";
|
||||
alang = "eng,en";
|
||||
slang = "eng,en,enUS";
|
||||
|
||||
glsl-shader = "${homeDirectory}/.config/mpv/shaders/FSR.glsl";
|
||||
scale = "lanczos";
|
||||
cscale = "lanczos";
|
||||
dscale = "mitchell";
|
||||
deband = "yes";
|
||||
scale-antiring = 1;
|
||||
|
||||
osc = "no";
|
||||
osd-on-seek = "no";
|
||||
osd-bar = "no";
|
||||
osd-bar-w = 30;
|
||||
osd-bar-h = "0.2";
|
||||
osd-duration = 750;
|
||||
|
||||
really-quiet = "yes";
|
||||
autofit = "65%";
|
||||
};
|
||||
|
||||
bindings = {
|
||||
"ctrl+a" = "script-message osc-visibility cycle";
|
||||
};
|
||||
scripts = with pkgs.mpvScripts; [
|
||||
mpris
|
||||
uosc
|
||||
thumbfast
|
||||
sponsorblock
|
||||
autocrop
|
||||
];
|
||||
};
|
||||
programs.yt-dlp = {
|
||||
enable = true;
|
||||
extraConfig = ''
|
||||
-o ${videos}/youtube/%(title)s.%(ext)s
|
||||
'';
|
||||
};
|
||||
|
||||
home = {
|
||||
file = {
|
||||
".config/mpv/shaders/FSR.glsl".source = "${shaders_dir}/FSR.glsl";
|
||||
};
|
||||
packages = with pkgs; [
|
||||
jellyfin-mpv-shim
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,119 +0,0 @@
|
||||
# taken from @jtojnar
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
unit = "gitea";
|
||||
srv = config.server;
|
||||
cfg = config.server.${unit};
|
||||
in {
|
||||
options.server.${unit} = {
|
||||
enable = lib.mkEnableOption {
|
||||
description = "Enable ${unit}";
|
||||
};
|
||||
url = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "git.${srv.domain}";
|
||||
};
|
||||
port = lib.mkOption {
|
||||
type = lib.types.int;
|
||||
default = 5003;
|
||||
description = "The port to host Gitea on.";
|
||||
};
|
||||
homepage.name = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "Gitea";
|
||||
};
|
||||
homepage.description = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "Git with a cup of tea";
|
||||
};
|
||||
homepage.icon = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "gitea.svg";
|
||||
};
|
||||
homepage.category = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "Services";
|
||||
};
|
||||
};
|
||||
config = lib.mkIf cfg.enable {
|
||||
services.${unit} = {
|
||||
enable = true;
|
||||
appName = "cnix code forge";
|
||||
|
||||
database = {
|
||||
type = "postgres";
|
||||
socket = "/run/postgresql";
|
||||
name = "gitea";
|
||||
user = "gitea";
|
||||
createDatabase = false;
|
||||
};
|
||||
|
||||
lfs = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
settings = {
|
||||
cors = {
|
||||
ENABLED = true;
|
||||
SCHEME = "https";
|
||||
ALLOW_DOMAIN = cfg.url;
|
||||
};
|
||||
log = {
|
||||
MODE = "console";
|
||||
};
|
||||
mailer = {
|
||||
ENABLED = false;
|
||||
MAILER_TYPE = "sendmail";
|
||||
FROM = "noreply+adam@cnst.dev";
|
||||
SENDMAIL_PATH = "/run/wrappers/bin/sendmail";
|
||||
};
|
||||
picture = {
|
||||
DISABLE_GRAVATAR = true;
|
||||
};
|
||||
repository = {
|
||||
DEFAULT_BRANCH = "main";
|
||||
DEFAULT_REPO_UNITS = "repo.code,repo.issues,repo.pulls";
|
||||
DISABLE_DOWNLOAD_SOURCE_ARCHIVES = true;
|
||||
};
|
||||
indexer = {
|
||||
REPO_INDEXER_ENABLED = true;
|
||||
};
|
||||
server = {
|
||||
DOMAIN = cfg.url;
|
||||
LANDING_PAGE = "explore";
|
||||
HTTP_PORT = cfg.port;
|
||||
ROOT_URL = "https://${cfg.url}/";
|
||||
};
|
||||
security = {
|
||||
DISABLE_GIT_HOOKS = false;
|
||||
};
|
||||
service = {
|
||||
DISABLE_REGISTRATION = true;
|
||||
};
|
||||
session = {
|
||||
COOKIE_SECURE = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
services.traefik.dynamicConfigOptions.http.routers."${unit}" = {
|
||||
rule = "Host(`" + cfg.url + "`)";
|
||||
service = "${unit}-service";
|
||||
entryPoints = ["websecure"];
|
||||
tls = {};
|
||||
};
|
||||
|
||||
services.traefik.dynamicConfigOptions.http.services."${unit}-service".loadBalancer.servers = [
|
||||
{url = "http://127.0.0.1:${toString cfg.port}";}
|
||||
];
|
||||
|
||||
server.postgresql.databases = [
|
||||
{
|
||||
database = "gitea";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user