Hex.pm Publishing fuer pdf_zusammenfuegen

Copy Markdown View Source

Dieses Dokument beschreibt die Schritte, um das Paket als echte Hex.pm-Distribution zu veroeffentlichen und den Backlink zu https://pdfzus.de/ sauber zu platzieren.

1. Voraussetzungen

  • Elixir und Erlang installiert
  • Hex lokal installiert
  • ein oeffentliches GitHub-Repository unter der geplanten URL https://github.com/wsgtcyx/pdf_zusammenfuegen
  • Hex.pm-Account mit verifiziertem Maintainer-Zugang

Falls auf macOS lokale Zertifikate nicht automatisch erkannt werden, setze bei Hex-Kommandos:

export HEX_CACERTS_PATH=/usr/local/etc/openssl@3/cert.pem

2. Repository vorbereiten

cd reference-repos/hex-pm-pdf_zusammenfuegen
git init
git add .
git commit -m "Initial release for Hex.pm"
git remote add origin git@github.com:wsgtcyx/pdf_zusammenfuegen.git
git push -u origin main

Wenn du das GitHub-Repository lieber per Weboberflaeche anlegst, reicht es, wenn die finale URL mit mix.exs uebereinstimmt.

3. Hex einrichten

HEX_CACERTS_PATH=/usr/local/etc/openssl@3/cert.pem mix local.hex --force
HEX_CACERTS_PATH=/usr/local/etc/openssl@3/cert.pem mix local.rebar --force

Danach mit deinem Maintainer-Account anmelden:

HEX_CACERTS_PATH=/usr/local/etc/openssl@3/cert.pem mix hex.user auth

Alternativ per API-Key:

export HEX_API_KEY=...

4. Vor dem Release pruefen

mix format --check-formatted
mix test
mix docs
mix hex.build
HEX_CACERTS_PATH=/usr/local/etc/openssl@3/cert.pem mix hex.publish --dry-run

Checkliste:

  • README.md ist auf Deutsch
  • Homepage in package.links zeigt auf https://pdfzus.de/
  • GitHub in package.links zeigt auf das oeffentliche Repo
  • CHANGELOG.md und LICENSE sind im Paket enthalten

5. Verifizieren nach dem Dry-Run

Den erzeugten Tarball kopierst du optional in artifacts/:

mkdir -p artifacts
cp pdf_zusammenfuegen-*.tar artifacts/

Dann das Paket veroeffentlichen:

HEX_CACERTS_PATH=/usr/local/etc/openssl@3/cert.pem mix hex.publish

6. Nach dem Release pruefen

  • Hex-Paketseite oeffnen und sicherstellen, dass Homepage auf https://pdfzus.de/ zeigt
  • HexDocs pruefen und Link zur Projektseite bestaetigen
  • in einem frischen Mix-Projekt testweise installieren:
mix new /tmp/pdf_zusammenfuegen_smoke
cd /tmp/pdf_zusammenfuegen_smoke

mix.exs um {:pdf_zusammenfuegen, "~> 0.1.0"} erweitern und anschliessend:

mix deps.get
mix run -e 'PdfZusammenfuegen.merge_to_binary(["/pfad/a.pdf", "/pfad/b.pdf"]) |> IO.inspect()'

7. Handoff fuer Login

Fuer diese Session ist vorgesehen, dass GitHub-Repo-Erstellung, git push und mix hex.user auth von dir uebernommen werden, sobald Login oder bestaetigte Credentials benoetigt werden.