- Shell 58%
- Makefile 42%
|
Some checks failed
Forgejo Release postit-deb / release (push) Failing after 2m5s
crossbuild-essential-arm64 only pulls gcc-aarch64-linux-gnu +
binutils-aarch64-linux-gnu + dpkg-cross. It does NOT transitively
pull libc6:arm64 (verified on the Debian package index: the Depends
chain stops at gcc-12-aarch64-linux-gnu, which doesn't depend on
libc6:arm64). So dh_makeshlibs works (binutils is there), but
dh_shlibdeps has no arm64 shlibs cache to read from.
Add explicit runtime libs after a dpkg --add-architecture arm64 +
apt-get update:
dpkg --add-architecture arm64
apt-get update
apt-get install -y --no-install-recommends \
build-essential debhelper imagemagick librsvg2-bin \
ca-certificates crossbuild-essential-arm64 \
libc6:arm64 libstdc++6:arm64 \
libfontconfig1:arm64 libfreetype6:arm64 \
libgtk-3-0:arm64
If the arm64 packages are unavailable from the runner's
configured apt sources, this run will fail with 'Unable to
locate package libc6:arm64' — but that was a real failure
mode already explored in earlier runs (run #31, before we had
dpkg --add-architecture arm64 in place).
|
||
|---|---|---|
| .forgejo/workflows | ||
| debian | ||
| tests | ||
| .gitignore | ||
| CHANGELOG.md | ||
| Makefile | ||
| README.md | ||
postit-debian
Paquet Debian pour PostIt.Desktop, le client desktop Avalonia de la plateforme Yavsc.Org.
Le paquet expose la commande postit sur le système, installe
l'entrée .desktop dans le menu, et enregistre le scheme URI
postit:// comme MIME handler (utilisé par l'OIDC Authorization
Code + PKCE pour le hand-off du callback — RFC 8252 §7.1).
Cible : Debian 13 (trixie). Testé également sur Ubuntu 24.04 LTS (equivalent ABI).
Construction
Pré-requis :
sudo apt install build-essential debhelper imagemagick librsvg2-bin \
dotnet-sdk-10.0 git
Sur Debian 13, installer .NET 10 depuis le dépôt officiel Microsoft :
wget https://packages.microsoft.com/config/debian/13/packages-microsoft-prod.deb \
-O /tmp/ms-prod.deb
sudo dpkg -i /tmp/ms-prod.deb
sudo apt update
sudo apt install dotnet-sdk-10.0
Puis :
make deb
Le .deb atterrit dans le répertoire parent (ou $POSTIT_OUT_DIR).
Pour bumper la version amont sans modifier ce dépôt :
make deb POSTIT_GIT_TAG=1.0.1
make deb POSTIT_GIT_URL=https://github.com/fork/yavsc.git POSTIT_GIT_TAG=my-branch
Installation
sudo apt install ./postit_1.0.0-1_amd64.deb
ou directement :
sudo dpkg -i postit_1.0.0-1_amd64.deb
sudo apt -f install # résout les dépendances manquantes
Pour installer sur arm64 :
# Sur une machine arm64 :
make clean && make deb # le .deb sera _arm64.deb
Le debian/rules publie avec --runtime linux-x64 pour
amd64. Pour produire un .deb arm64, override :
make deb POSTIT_RUNTIME=linux-arm64
(le paramètre est exposé par debian/rules ; bump à ajouter si
besoin). À noter : un seul runtime par build — le --runtime
exclut les autres plateformes, donc le .deb est portable mais
mono-architecture.
Vérification
Après installation :
$ which postit
/usr/bin/postit
$ postit --help # (l'application Avalonia ouvre sa fenêtre)
$ xdg-mime query default x-scheme-handler/postit
postit.desktop
$ xdg-open postit://callback?code=test
Le scheme handler lance PostIt avec l'URL en argument. En interne,
PostIt (PostIt.Desktop) appelle SingleInstance.TryHandOffAsync
puis sort, transferrant l'URL au process PostIt déjà actif via
un named pipe.
Désinstallation
sudo apt remove postit
Le postrm du paquet rafraîchit la base .desktop. Le scheme
handler postit:// n'est pas explicitement désenregistré
(système — par utilisateur c'est xdg-mime default ...).
Maintenance
- Bumper
debian/changelogà chaque release, conformément à la Debian Policy §4.4 (entries datées, signées par le mainteneur). - Mettre à jour
POSTIT_GIT_TAGpar défaut dansdebian/rulesetMakefileà chaque release amont. - Rebuild après changement de licence amont.
Liens
- pazof/yavsc — source amont.
- doc/postit-oidc.md — flow OIDC + custom URI scheme.
- Debian Policy Manual — référence pour la structure d'un paquet.