asciiquarium: Python-Port statt Perl (asciiquarium-ng von git.motocamp.de)

Ersetzt den Perl-tar.gz-Download mit sed-Patches durch den Python-Port.
Keine externen Perl-Abhängigkeiten mehr (Term::Animation, libcurses-perl).
This commit is contained in:
rene 2026-03-29 10:00:45 +02:00
parent 132ac255a3
commit b4a0f27b7b
2 changed files with 14 additions and 32 deletions

View file

@ -85,23 +85,13 @@ dnf install -y \
ok "Pakete installiert" ok "Pakete installiert"
# asciiquarium (Perl-basiert, nicht in Fedora-Repos) # asciiquarium-ng (Python-Port, von git.motocamp.de)
echo ""
perl -MTerm::Animation -e1 2>/dev/null || cpan -T Term::Animation
if ! command -v asciiquarium &>/dev/null; then if ! command -v asciiquarium &>/dev/null; then
curl -fsSL https://robobunny.com/projects/asciiquarium/asciiquarium_1.1.tar.gz -o /tmp/asciiquarium.tar.gz \ curl -fsSL "https://git.motocamp.de/rene/asciiquarium/raw/branch/main/asciiquarium_ng.py" \
&& tar xzf /tmp/asciiquarium.tar.gz -C /tmp \ -o /usr/local/bin/asciiquarium \
&& cp /tmp/asciiquarium_1.1/asciiquarium /usr/local/bin/ \
&& chmod +x /usr/local/bin/asciiquarium \ && chmod +x /usr/local/bin/asciiquarium \
&& ok "asciiquarium installiert" \ && ok "asciiquarium-ng installiert" \
|| warn "asciiquarium uebersprungen" || warn "asciiquarium-ng uebersprungen"
# Patch: beliebige Taste beendet asciiquarium (statt nur 'q')
if [ -f /usr/local/bin/asciiquarium ]; then
sed -i '/\$in eq .q.*quit/d' /usr/local/bin/asciiquarium
sed -i "s/elsif( \$in eq 'r'/if ( \$in eq 'r'/" /usr/local/bin/asciiquarium
sed -i "/\$in eq 'p'.*paused/a\\\t\t\telsif( \$in ne ERR ) { quit(); } # Any key exits" /usr/local/bin/asciiquarium
fi
rm -rf /tmp/asciiquarium*
fi fi
# ── 6. WireGuard VPN ────────────────────────────────────────────────────── # ── 6. WireGuard VPN ──────────────────────────────────────────────────────

View file

@ -153,25 +153,17 @@ apt install -y \
|| { fail "apt install fehlgeschlagen"; dpkg --configure -a; apt install -f -y; } || { fail "apt install fehlgeschlagen"; dpkg --configure -a; apt install -f -y; }
ok "Pakete installiert (apt)" ok "Pakete installiert (apt)"
# asciiquarium (nicht in apt verfuegbar, manuell installieren) # asciiquarium-ng (Python-Port, von git.motocamp.de)
# benoetigt Term::Animation (ebenfalls nicht in apt, daher via CPAN)
apt-get install -y libcurses-perl -qq
perl -MTerm::Animation -e1 2>/dev/null || cpan -T Term::Animation
if ! command -v asciiquarium &>/dev/null; then if ! command -v asciiquarium &>/dev/null; then
curl -fsSL https://robobunny.com/projects/asciiquarium/asciiquarium_1.1.tar.gz -o /tmp/asciiquarium.tar.gz \ if command -v python3 &>/dev/null; then
&& tar xzf /tmp/asciiquarium.tar.gz -C /tmp \ curl -fsSL "https://git.motocamp.de/rene/asciiquarium/raw/branch/main/asciiquarium_ng.py" \
&& cp /tmp/asciiquarium_1.1/asciiquarium /usr/local/bin/ \ -o /usr/local/bin/asciiquarium \
&& chmod +x /usr/local/bin/asciiquarium \ && chmod +x /usr/local/bin/asciiquarium \
&& ok "asciiquarium installiert" \ && ok "asciiquarium-ng installiert" \
|| warn "asciiquarium uebersprungen" || warn "asciiquarium-ng uebersprungen"
# Patch: beliebige Taste beendet asciiquarium (statt nur 'q') else
# r=Redraw und p=Pause bleiben erhalten warn "asciiquarium: python3 nicht gefunden, uebersprungen"
if [ -f /usr/local/bin/asciiquarium ]; then
sed -i '/\$in eq .q.*quit/d' /usr/local/bin/asciiquarium
sed -i "s/elsif( \$in eq 'r'/if ( \$in eq 'r'/" /usr/local/bin/asciiquarium
sed -i "/\$in eq 'p'.*paused/a\\\t\t\telsif( \$in ne ERR ) { quit(); } # Any key exits" /usr/local/bin/asciiquarium
fi fi
rm -rf /tmp/asciiquarium*
fi fi
# fastfetch (nicht in apt verfuegbar, .deb von GitHub) # fastfetch (nicht in apt verfuegbar, .deb von GitHub)