added wishlist and more

This commit is contained in:
fwastring 2025-10-07 14:33:57 +02:00
parent 6aa4e31b67
commit 90c13a0728
8 changed files with 176 additions and 34 deletions

View file

@ -268,6 +268,9 @@ in
# Screencapture
"$mod SHIFT, s, exec, ${pkgs.grim}/bin/grim -g \"$(${pkgs.slurp}/bin/slurp)\" - | ${pkgs.wl-clipboard}/bin/wl-copy -t image/png"
# special
"SUPER+SHIFT, code:201, exec, confetti"
];
bindm = [

View file

@ -6,29 +6,29 @@
settings = {
"$schema"= "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json";
# Macchiato
# "palette" = {
# "os"= "#ACB0BE";
# "closer"= "p:os";
# "pink"= "#F5BDE6";
# "lavender"= "#B7BDF8";
# "blue"= "#8aadf4";
# "peach" = "#f5a97f";
# "red" = "#ed8796";
# "green" = "#a6da95";
# "mauve" = "#c6a0f6";
# };
# Latte
"palette" = {
"os"= "#ACB0BE";
"closer"= "p:os";
"pink" = "#ea76cb";
"lavender" = "#7287FD";
"blue" = "#1e66f5";
"peach" = "#fe640b";
"red" = "#d20f39";
"green" = "#40a02b";
"mauve" = "#8839ef";
"pink"= "#F5BDE6";
"lavender"= "#B7BDF8";
"blue"= "#8aadf4";
"peach" = "#f5a97f";
"red" = "#ed8796";
"green" = "#a6da95";
"mauve" = "#c6a0f6";
};
# Latte
# "palette" = {
# "os"= "#ACB0BE";
# "closer"= "p:os";
# "pink" = "#ea76cb";
# "lavender" = "#7287FD";
# "blue" = "#1e66f5";
# "peach" = "#fe640b";
# "red" = "#d20f39";
# "green" = "#40a02b";
# "mauve" = "#8839ef";
# };
"blocks"= [
{
"alignment"= "left";

View file

@ -38,6 +38,7 @@
freecad-wayland
kdePackages.okular
angryipscanner
vlc
# TUI
mpc
@ -58,6 +59,7 @@
devour # Swallow windows
caligula # Burn ISOs
ptouch-print
xev
# Transforms
yt-dlp

View file

@ -0,0 +1,82 @@
{
lib,
config,
...
}:
with lib;
let
in
{
options = {
wishlist = {
enable = mkEnableOption "enables wishlist";
port = lib.mkOption {
type = lib.types.int;
default = 5434;
description = "The port wishlist listens on.";
};
host = mkOption {
type = types.str;
defaultText = literalExpression "127.0.0.1";
description = "The hostname that wishlist binds to";
};
domain = mkOption {
type = types.str;
description = "Domain name for wishlist to be served on.";
};
};
};
config = mkMerge [
(mkIf config.wishlist.enable {
systemd.tmpfiles.settings."wishlist-dirs" = {
"/var/wishlist".d = {
mode = "0755";
user = "root";
group = "root";
};
"/var/wishlist/uploads".d = {
mode = "0755";
user = "root";
group = "root";
};
"/var/wishlist/data".d = {
mode = "0755";
user = "root";
group = "root";
};
};
virtualisation.oci-containers = {
backend = "podman";
containers = {
wishlist = {
image = "ghcr.io/cmintey/wishlist:latest";
volumes = [
"/var/wishlist/uploads:/usr/src/app/uploads"
"/var/wishlist/data:/usr/src/app/data"
];
ports = [ "${config.wishlist.host}:${toString config.wishlist.port}:3280" ];
environment = {
ORIGIN = "https://${config.wishlist.domain}";
TOKEN_TIME = "72";
};
};
};
};
# nginx reverse proxy
services.nginx.virtualHosts."${config.wishlist.domain}" = {
enableACME = true;
forceSSL = true;
locations."/" = {
proxyPass = "http://${config.wishlist.host}:${toString config.wishlist.port}";
proxyWebsockets = true;
extraConfig = "proxy_ssl_server_name on;" + "proxy_pass_header Authorization;";
};
};
})
];
}