From 4840a49f58ba81306105e9178a4ec9dcf7acdbea Mon Sep 17 00:00:00 2001 From: m3tam3re Date: Mon, 24 Apr 2023 19:14:11 +0200 Subject: [PATCH] +mautic --- home/features/desktop/default.nix | 2 +- home/features/desktop/espanso.nix | 8 ++- hosts/lkk-nix-1/services/default.nix | 1 - hosts/lkk-nix-1/services/traefik.nix | 8 +-- pkgs/default.nix | 2 + pkgs/espanso/default.nix | 85 ++++++++++++++++++++++++++++ 6 files changed, 99 insertions(+), 7 deletions(-) create mode 100644 pkgs/espanso/default.nix diff --git a/home/features/desktop/default.nix b/home/features/desktop/default.nix index 93c0842..ad2bb55 100644 --- a/home/features/desktop/default.nix +++ b/home/features/desktop/default.nix @@ -3,6 +3,7 @@ imports = [ ./crypto.nix ./design.nix + #./espanso.nix ./extrafonts.nix ./media.nix ./office.nix @@ -10,7 +11,6 @@ ./syncthing.nix ./waybar.nix ./wofi.nix - # ./wofi-pass.nix ]; xdg.mimeApps = { diff --git a/home/features/desktop/espanso.nix b/home/features/desktop/espanso.nix index 258f494..4b1f119 100644 --- a/home/features/desktop/espanso.nix +++ b/home/features/desktop/espanso.nix @@ -1,3 +1,9 @@ +{ pkgs, outputs, ...}: +let + espanso = outputs.packages.x86_64-linux.espanso; +in { - #services.espanso.enable = true; + home.packages = [ + espanso + ]; } diff --git a/hosts/lkk-nix-1/services/default.nix b/hosts/lkk-nix-1/services/default.nix index f9cd4f7..1829bb5 100644 --- a/hosts/lkk-nix-1/services/default.nix +++ b/hosts/lkk-nix-1/services/default.nix @@ -1,6 +1,5 @@ { imports = [ - ./adguard.nix ./container.nix ./gitea.nix ./invidious.nix diff --git a/hosts/lkk-nix-1/services/traefik.nix b/hosts/lkk-nix-1/services/traefik.nix index 06d3310..c02d923 100644 --- a/hosts/lkk-nix-1/services/traefik.nix +++ b/hosts/lkk-nix-1/services/traefik.nix @@ -70,7 +70,7 @@ [{ url = "http://localhost:3006/"; }]; wireguard.loadBalancer.servers = [{ url = "http://localhost:3007/"; }]; - adguard.loadBalancer.servers = [{ url = "http://localhost:3008/"; }]; + mautic.loadBalancer.servers = [{ url = "http://localhost:3008/"; }]; briefkasten.loadBalancer.servers = [{ url = "http://localhost:3009/"; }]; littlelink-lanakk.loadBalancer.servers = @@ -201,11 +201,11 @@ middlewares = "auth"; entrypoints = "websecure"; }; - adguard = { - rule = "Host(`ab.lanakk.com`)"; + mautic = { + rule = "Host(`ma.lanakk.com`)"; tls = { certResolver = "godaddy"; - domains = "ab.lanakk.com"; + domains = "ma.lanakk.com"; }; service = "adguard"; middlewares = "auth"; diff --git a/pkgs/default.nix b/pkgs/default.nix index 1193e12..1988901 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,4 +1,6 @@ { pkgs ? import { } }: { wofi-pass = pkgs.callPackage ./wofi-pass { }; + espanso = pkgs.callPackage ./espanso { }; + } diff --git a/pkgs/espanso/default.nix b/pkgs/espanso/default.nix new file mode 100644 index 0000000..e36450e --- /dev/null +++ b/pkgs/espanso/default.nix @@ -0,0 +1,85 @@ +{ lib +, fetchFromGitHub +, rustPlatform +, cargo-make +, pkg-config +, extra-cmake-modules +, dbus +, libX11 +, libXi +, libXtst +, libnotify +, libxkbcommon +, openssl +, xclip +, xdotool +, setxkbmap +, wl-clipboard +, wxGTK32 +, makeWrapper +, stdenv +, waylandSupport ? true, +}: + +rustPlatform.buildRustPackage rec { + pname = "espanso"; + version = "2.1.8"; + + src = fetchFromGitHub { + owner = "espanso"; + repo = pname; + rev = "v${version}"; + sha256 = "06wzrjdvssixgd9rnrv4cscbfiyvp5pjpnrih48r0ral3pj2hdg5"; + }; + + cargoSha256 = "sha256-U2ccF7DM16TtX3Kc4w4iNV4WsswHJ0FpO3+sWCL1Li8="; + + nativeBuildInputs = [ + extra-cmake-modules + pkg-config + makeWrapper + cargo-make + wxGTK32 + ]; + + NO_X11 = "true"; + + buildInputs = [ + libXi + libXtst + openssl + ] ++ lib.optionals stdenv.isLinux [ + dbus + libnotify + libX11 + libxkbcommon + xclip + xdotool + wxGTK32 + wl-clipboard + ]; + + # Some tests require networking + doCheck = false; + + preBuild = lib.optionalString waylandSupport '' + export NO_X11=true + ''; + + postInstall = '' + wrapProgram $out/bin/espanso \ + --prefix PATH : ${lib.makeBinPath [ libnotify xclip wl-clipboard setxkbmap ]} + ''; + + meta = with lib; { + description = "Cross-platform Text Expander written in Rust"; + homepage = "https://espanso.org"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ kimat thehedgeh0g ]; + platforms = platforms.unix; + + longDescription = '' + Espanso detects when you type a keyword and replaces it while you're typing. + ''; + }; +}