From be3c6fda881bc11d5123d6b3a09ce9d250199b32 Mon Sep 17 00:00:00 2001 From: sommerfeld Date: Fri, 29 May 2026 11:18:16 +0100 Subject: refactor(eer): install external-editor-revived via nix on the host MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The AUR `external-editor-revived` PKGBUILD declares a hard `thunderbird` dependency, which blocks removing the unused system Thunderbird binary alongside the org.mozilla.thunderbird flatpak (and pacman's `AssumeInstalled` is a CLI flag, not a pacman.conf directive, so the previous workaround was nonfunctional). Nixpkgs' `external-editor-revived` is just `rustPlatform.buildRustPackage` plus a relocatable native-messaging manifest — zero mailer dep — so the host gets it from nix instead. * nix/host.nix: add `external-editor-revived` to `home.packages`. Kept out of `common.nix` so the remote-dev VM (which has no Thunderbird) doesn't carry the build closure. * run_onchange_after_deploy-tb-eer.sh.tmpl: search `~/.nix-profile/{bin,lib/mozilla/native-messaging-hosts}` first and fall through to the legacy pacman paths. The chezmoi manifest-hash probe now checks the nix path too, so the hook re-runs cleanly when nix bumps the EER version. * meta/base.txt: drop the `external-editor-revived` AUR entry and rewrite the comment to point at the nix declaration. * etc/pacman.conf: revert the bogus `AssumeInstalled` directive (CLI-only, not pacman.conf). On-host migration: home-manager switch --flake ~/dotfiles/nix#host # picks up EER sudo pacman -Rns external-editor-revived thunderbird mpv chezmoi apply -v # re-runs tb-eer hook --- nix/host.nix | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'nix') diff --git a/nix/host.nix b/nix/host.nix index eac2a20..96adfba 100644 --- a/nix/host.nix +++ b/nix/host.nix @@ -13,6 +13,19 @@ home.username = builtins.getEnv "USER"; home.homeDirectory = builtins.getEnv "HOME"; + # ── Thunderbird helpers (host only) ──────────────────────────────────────── + # external-editor-revived is the native-messaging host that lets the + # Thunderbird addon hand a composing draft to $EDITOR. We run TB as the + # org.mozilla.thunderbird flatpak; the AUR package would drag in system + # `thunderbird` as a hard dep, so we take it from nixpkgs here instead + # (the nix derivation has no mailer dep). The bridge wiring lives in + # run_onchange_after_deploy-tb-eer.sh.tmpl; it auto-detects the binary + # under ~/.nix-profile and the manifest gets relocated into the TB + # flatpak sandbox. + home.packages = with pkgs; [ + external-editor-revived + ]; + # ── Smartcard (Yubikey) ──────────────────────────────────────────────────── # Nix's gnupg ships its own scdaemon. Delegate to the system pcscd # service instead of letting nix's scdaemon open the USB device -- cgit v1.3.1