LibreOffice: F1-Hilfe bei Fx/snap

In Ubuntu 22.04 hat Canonical bekanntlich Firefox durch ein extra dafür kreiertes snap-Image ersetzt. Daraus resultiert eine Unmenge von Problemen, die in Foren aufschlagen (wenn diese User wenigstens längst geschriebenes selbst suchen und lesen würden…).

Eines findet sich in LibreOffice, wenn man über F1 die Hilfe aufrufen will. Diese befindet sich als html lokal im System. Man kann sie auch im Netz aufrufen. Mancher im Busch oder auch mit LTE-Kontingent kann oder möchte das jedoch nicht.

Mir selbst kann es egal sein, ich nutze zwar LibO seit StarWriter, aber nicht die Hilfe. Ubuntu als Ganzes ist für mich seit Jahren keine seriöse Distribution mehr aus mehreren Gründen.

Infolge eines Threads habe ich mir dennoch aus Problemlösungsinteressse die Sache in einer LJammy-VM angesehen, da kann man schön die Versuche durch Rücksetzen eines Snapshots mit einem Wisch in den Müll kippen – und da gehört snap auch hin.

Vereinfacht gesagt: Der User darf mit snap-Programmen im Standard-Confinement strict nur auf ~ zugreifen. Daher kann in LibO über F1 nicht auf “/usr/share/libreoffice/help/index.html” sowie das gesamte Verzeichnis zugegriffen werden, wenn Firefox/snap als default gesetzt ist…und das ist es unter 22.04. LibO geht danach, es gibt keine Möglichkeit in einer LibO-Konfiguration zur Änderung (was als solches durchaus i.O. ist).

Möglichkeiten:

  • Kopieren des Verzeichnisses nach ~
    1
    
    cp -r /usr/share/libreoffice/help/ ~/Documents/libo-help/

    Ein Symlink, worauf man vielleicht kommen könnte, reicht da natürlich nicht. Für das darin liegende index.html kann man sich auch einen Starter erstellen, wenn man das häufig braucht und sich nicht durchklicken will.

  • Installation eines Browsers nicht als snap, z.B.:
    1
    
    sudo apt install falkon

    Damit kann man “/usr/share/libreoffice/help/index.html” öffnen, ggf. über einen zu erstellenden Starter.

Aus LibO heraus mit F1 kann man aber immer noch nicht aufrufen, denn Firefox/snap ist nach wie vor der default gesetzte Browser. Das zu ändern, sprich die richtige Stelle zu finden, kann Nerven kosten.

Beim Alternativen-System steht der snap-Firefox nicht mal drin. Man kann den hinzufügen und Falkon manuell setzen. Wirkt aber nicht. Auch mit xdg-settings wird es nichts. Hier wird aber immerhin angezeigt, daß $BROWSER gesetzt, deshalb keine Änderung möglich ist. Problem ist, es gibt 97 Möglichkeiten, an welchen Stellen die Variable gesetzt worden sein kann, bspw. in “/etc/environment”.

Unter LJammy habe ich es dann in “/etc/xdg/xdg-Lubuntu/lxqt/session.conf” gefunden, entsprechende Stelle geändert in

[Environment]
BROWSER=falkon

Bei einem anderen DE gibt es diese LXQt-Datei natürlich nicht, eventuell eine Entsprechung. Oder es liegt ganz woanders, hrr.

Man kann natürlich auch einfach snapd purgen. Nur baut Canonical in Ubuntu eben immer weiter gehend darauf. Entsprechende deb-Pakete gibt es nicht nur für Chromium und Firefox nicht mehr (ja, Fx aus PPA, aber mit Prioritätssetzung) oder werden wie bei vlc in universe innerhalb einer Ubuntu-Version nicht aktualisiert.

Ergo: anständige Linux-Distribution installieren!

pdf, finale Ungleichheit

Das Portable Document Format ist entwickelt worden, um ein finales Dokument zu erhalten, das in jedem OS in jedem pdf-Viewer gleich aussieht, ebenfalls gedruckt. Es ist wie gesagt ein Endprodukt, es soll nicht editierbar sein (was User offensichtlich nie verstehen werden). Daß Drittanbieter Bastelprogramme anbieten, ändert daran nichts.

In 3 Jahrzehnten ist freilich immer weiter angeflanscht worden, so daß es nicht nur den einen Standard, die eine Version gibt. Bspw. für Archivierung sollte PDF/A (in Unterversionen), ISO 19005, gewählt werden, absichtlich unteres Level.

Hybrid-PDF kann man bei der Erstellung (LibreOffice) wählen, um in einem .pdf-File sowohl PDF als auch ODF zu speichern. Das .pdf-File wird damit durch Trickserei editierbar, man braucht nicht separat .odt bzw. .ods zu speichern. Natürlich ist dabei die Filesize größer. Wenn das File weitergegeben werden und nicht editierbar sein soll, darf man das selbstverständlich nicht hybrid speichern (eher exportieren).

Sind Forms eingebettet, kann ein solches pdf-File als ausfüllbares Formular verwendet werden. Dazu genügt ein pdf-Viewer.

Read more “pdf, finale Ungleichheit”

CUPS: Drucker nicht mehr angezeigt

Wenn seit etwa einer Woche (in Abhängigkeit, welche Distribution installiert ist, ob man in arch testing aktiviert und wann geupdatet hat) keine Drucker mehr als installiert angezeigt werden, fängt man nicht unlogisch an, die neu installieren zu wollen, auch cups nicht.

Mit CUPS als solchem liegt man jedoch nicht falsch, man checkt, ob der Service läuft:

1
2
3
4
5
6
$ systemctl status cups
● cups.service - CUPS Scheduler
     Loaded: loaded (/usr/lib/systemd/system/cups.service; disabled; vendor preset: disabled)
     Active: inactive (dead)
TriggeredBy: ● cups.socket
       Docs: man:cupsd(8)

Also nicht, richtig vermutet. Kann man den Daemon mit

1
# systemctl start cups

starten, sprich funktioniert das Drucken wieder (aber nur für diese eine Session), weiß man schon mal, alles ist richtig installiert. Bis auf die Kleinigkeit, daß eben der Daemon nicht automatisch gestartet wird. Sieht man selbstverständlich bei Updates hin, sollte aufgefallen sein, daß sich kürzlich bzgl. cups etwas geändert hat. Man prüft in den Changes. Ab Zeile 190 “# rename the systems service files” wird man bestätigt, daß 5 Files “org.cups.cups*.*” in “/usr/lib/systemd/system/” umbenannt worden sind. Nun sollte man wissen, daß auf diese über Softlinks zugegriffen wird. Die zeigen aber auf nicht mehr existente Files.

Man sollte den Daemon nochmal stoppen, auch, um hernach gleich zu sehen, ob’s funktioniert hat:

1
# systemctl stop cups

Da man sauber arbeitet, löscht man zuerst die toten Links:

1
# systemctl disable org.cups.cupsd

Nun legt man die neuen Softlinks an:

1
# systemctl enable --now cups

Mit der Option “now” wird erreicht, daß das Gewünschte sofort aktiv ist, kein Reboot oder extra Start nötig.

Status-Check:

1
2
3
4
5
6
7
8
9
10
$ systemctl status cups
● cups.service - CUPS Scheduler
     Loaded: loaded (/usr/lib/systemd/system/cups.service; enabled; vendor preset: disabled)
     Active: active (running) since Mon 2020-11-23 18:10:42 CET; 31s ago
TriggeredBy: ● cups.path
             ● cups.socket
       Docs: man:cupsd(8)
   Main PID: 859 (cupsd)
     Status: "Scheduler is running..."
(...)

Done.

LibreOffice: Workaround fuer c&p

Es ist schon ein Kreuz, wenn Essentials nicht funktionieren, vor allem nicht mehr oder schon wieder nicht mehr. Eigentlich soll das Problem des verlorenen copy & paste im Zuge eines weiteren mit LibreOffice 6.2.1.1 gefixt worden sein, ist es aber auch mit .2, das um eine KW Verspätung erschienen ist und nach Release Plan zur Final erklärt werden soll, nicht.

Ursache ist ein dysfunktionales Zusammenspiel mit Qt5 (sprich Plasma und LXQt), d.h. c&p zwischen LibO und Qt-basierten Programmen wie bspw. featherpad ist weitgehend nicht möglich (aber z.B. mit dem Gtk-basierten leafpad, beide Richtungen, wer’s ausprobieren will). Als das hier erstmals mit den 6.2.0-RCs aufgetreten ist, habe ich in etlichen Richtungen gesucht, Dailies getestet, auch Clipboard-Manager gewechselt.

Bis das irgendwann mal tatsächlich korrigiert wird, kann man sich mit einem (unschönen) Workaround behelfen:

1
OOO_FORCE_DESKTOP=gnome /opt/libreoffice6.2/program/soffice &

Sollte man nicht das TDF-Original, sondern Pakete aus den Repositories der Distributionen oder Fremdquellen verwenden, sobald verfügbar und dahingehend ungefixt, wäre der Pfad natürlich ein anderer.

LibreOffice – Get involved!

Help us make LibreOffice even better!

LibreOffice 6.1.1.1, also rc1, verspätet sich um 2 Wochen, was unüblich ist. Es kommt also knapp nach dem ursprünglich geplanten rc2. Tage später wird der Release Plan entsprechend korrigiert (für das folgende 6.1.2, ohnehin knapp dahinter, wird sogar rc2 gestrichen, um wieder im Zeitplan zu sein), aber nicht weit genug, denn rc2 ist nun gestern Abend, also auch verspätet, endlich auf den Server gelegt worden. Der letzte Release Candidate wird, findet sich kein Show Stopper, jeweils nach einer Woche zur Final erklärt. Ob’s das mit rc2 gewesen ist, wird man sehen, ich gehe aber davon aus, 6.1.2.1 kommt ja schon in rund zwei Wochen. Da kann man schnell nachfeilen, sind schließlich Maintenance Releases.

Startet man erstmals 6.1.1.2, kann man eine farbig unterlegte Infozeile sehen (zumindest im TDF-deb-Original), eher eine mit der Bitte “Help us make LibreOffice even better!”. Das entbehrt mit der Vorgeschichte nicht einer gewissen Ironie.

Über den Button gelangt man auf Get Involved. Wobei ich den Erfolg solcher Aufrufe im Programm bezweifle (sowas hat man auch schon bei derartigen Versuchen in einem großen Linux-Forum gesehen). Wer wirklich beitragen kann und will, macht das auch ohne.

Update 2018-09-13: rc2 ist zur Final erklärt worden, die Karrenzzeit also diesmal recht kurz.

LibreOffice (TDF) – Icons in Desktop-Menus

Nach der Installation des originalen LibreOffice (The Document Foundation) können je nach Desktop Environment, beispielsweise Enlightenment, neben den Aufrufen der einzelnen LibO-Module in Desktop-Menus deren Icons fehlen, da der Icon-Pfad ein anderer ist.

In einem Terminal über copy & paste befehlszeilenweise ausführen:

  1. Kopiere die .desktop-Files:
    1
    
    cp /opt/libreoffice5.4/share/xdg/* ~/.local/share/applications/
  2. Ersetze in jedem entsprechenden File den Icon-Pfad:
    1
    2
    3
    4
    5
    6
    7
    8
    
    sudo sed -i 's/"Icon=libreoffice5.4-base"/"Icon=/usr/share/icons/hicolor/128x128/apps/libreoffice5.4-base.png"g' ~/.local/share/applications/base.desktop
    sudo sed -i 's/"Icon=libreoffice5.4-calc"/"Icon=/usr/share/icons/hicolor/128x128/apps/libreoffice5.4-calc.png"g' ~/.local/share/applications/calc.desktop
    sudo sed -i 's/"Icon=libreoffice5.4-draw"/"Icon=/usr/share/icons/hicolor/128x128/apps/libreoffice5.4-draw.png"g' ~/.local/share/applications/draw.desktop
    sudo sed -i 's/"Icon=libreoffice5.4-impress"/"Icon=/usr/share/icons/hicolor/128x128/apps/libreoffice5.4-impress.png"g' ~/.local/share/applications/impress.desktop
    sudo sed -i 's/"Icon=libreoffice5.4-math"/"Icon=/usr/share/icons/hicolor/128x128/apps/libreoffice5.4-math.png"g' ~/.local/share/applications/math.desktop
    sudo sed -i 's/"Icon=libreoffice5.4-startcenter"/"Icon=/usr/share/icons/hicolor/128x128/apps/libreoffice5.4-startcenter.png"g' ~/.local/share/applications/startcenter.desktop
    sudo sed -i 's/"Icon=libreoffice5.4-writer"/"Icon=/usr/share/icons/hicolor/128x128/apps/libreoffice5.4-writer.png"g' ~/.local/share/applications/writer.desktop
    sudo sed -i 's/"Icon=libreoffice5.4-writer"/"Icon=/usr/share/icons/hicolor/128x128/apps/libreoffice5.4-writer.png"g' ~/.local/share/applications/writer.desktop
  3. Ggf. ist ein Relogin oder ein Neustart des DEs erforderlich.

Dies bleibt auch für jede weitere 5.4er Version, davon ausgehend, daß dort der Pfad nicht geändert wird, bestehen. D.h., es muß nicht wiederholt werden.

Installation Samsung Unified Linux Driver

Starte mit [ctrl] + [alt] + [t] ein Terminal und führe Zeile für Zeile über copy & paste komplett aus:

  1. Starte die Printerconfig:
    1
    
    system-config-printer
  2. Entferne den möglicherweise bereits falsch installierten Samsung!
  3. Schließe die Printerconfig!
  4. Ziehe den Samsung über USB/LAN ab!
  5. Erstelle das Downloadverzeichnis und wechsele dorthin:
    1
    
    mkdir -p ~/Downloads/samsung/uld/ && cd ~/Downloads/samsung/uld/
  6. Ziehe das Treiberarchiv:
    1
    
    wget https://ftp.hp.com/pub/softlib/software13/printers/MFP170/uld-hp_V1.00.39.12_00.15.tar.gz -O uld-hp_V1.00.39.12_00.15.tar.gz

    Hinweis: 2017-11 hat HP Inc. Samsungs Druckersparte übernommen, daher sind Treiber unter deren Domain zu finden.

  7. Entpacke das Treiberarchiv:
    1
    
    tar -xzvf uld-hp_V1.00.39.12_00.15.tar.gz
  8. Installiere die Treiber:
    1
    
    sudo uld/install.sh
  9. Schließe den Samsung über USB oder (W)LAN an!
  10. Starte die Printerconfig:
    1
    
    system-config-printer
  11. Laß den Samsung-Drucker an USB bzw. als Netzwerkdrucker erkennen und wähle den eben installierten Treiber aus!
  12. Gehe die Konfiguration durch! Möglich ist auch die Konfiguration über Browser http://localhost:631/printers (localhost temporär in NoScript zulassen, falls installiert).

Soll(en) der/die ULD wieder deinstalliert werden:

1
sudo uld/uninstall.sh

Die Treiber, nicht Drucker entfernt, versteht sich.

Installation Dell Unified Linux Driver

(Modelle: 1130, 1130n, 1133, 1135n, 1815, 2145cn, 2335dn, 2355dn, 5330, B1160, B1160w, B1165nfw, B1260dn, B1265dfw, B1265dnf, B2365dnf)

Starte mit [ctrl] + [alt] + [t] ein Terminal und führe Zeile für Zeile über copy & paste komplett aus:

  1. Starte die Printerconfig:
    1
    
    system-config-printer
  2. Entferne den möglicherweise bereits falsch installierten Dell!
  3. Schließe die Printerkonfig!
  4. Erstelle das Downloadverzeichnis und wechsele dorthin:
    1
    2
    
    mkdir -p ~/Downloads/dell_unidrv/
    cd ~/Downloads/dell_unidrv/
  5. Ziehe das Treiberarchiv:
    1
    
    wget http://downloads.dell.com/FOLDER01513124M/1/B1160w_Linux_v1.04_Driver.tar.gz -O B1160w_Linux_v1.04_Driver.tar.gz
  6. Entpacke das Treiberarchiv:
    1
    
    tar -xzvf B1160w_Linux_v1.04_Driver.tar.gz
  7. Installiere die Treiber:
    1
    
    cdroot/autorun
  8. Innerhalb der folgenden grafischen Installation kann der Drucker bzw. dessen Anschluß gewählt werden. Über den “Unified Driver Configurator” (recht unverschämt in einer eigenen Menu-Gruppe “DELL Unified Driver”) kann dies auch später durchgegangen oder geändert werden.

Alternativ zur nicht paketverwaltungskonformen Installation kann man sich das jeweilige .ppd-File auch aus dem entpackten Archiv unter “cdroot/Linux/noarch/at_opt/share/ppd/” holen und über

1
system-config-printer

installieren.

TallyGenicom unter Lubuntu

In einem Forum sucht ein User nach einem Treiber unter Lubuntu für einen Mannesmann Tally…die nicht-Smartphone-Generation denkt da natürlich sofort an ratternde 9-/24-Nadler, die Zeit von Atari und Commodore 8 bit bis zu den ersten Amigas. Nun ist das aber gar kein solcher (vom Threadstarter auch noch falscher kaum möglich geschrieben) – hallo, diese Fa. gibt es seit 1996 nicht mehr – sondern mit der Modellbezeichnung ein TallyGenicom 8008 Color Laser, wie es groß auf der Frontseite dieses Druckers für größere Büros lesbar ist.

Integriert sind nun nicht etwa PCL oder PS, sondern die proprietäre CPL (Compressed Printer Language). Damit sieht es sehr düster aus (ich frage mich immer, wie man sowas kaufen kann, selbst unter Redmondschen OS kann die Unterstützung auch mal einfach finí sein).

Nun hat man also so einen Kasten herumstehen. Um den zum Leben zu erwecken, betreibt man nicht etwa eigene Recherche, kombiniert nicht, testet nicht, das wäre ja mühselig, man fragt lieber in einem Forum, gibt sich nicht mal dabei einen Hauch Mühe und läßt machen (ein Grund, weshalb ich dort nicht antworte).

Mit einem angepaßten foo2zjs soll der Drucker angesprochen werden können. Er steht zwar nicht in der Liste, soll jedoch mit dem Treiber des ähnlichen Lexmark C510n (der Hersteller ist Paradebeispiel für Linux-Ignoranz) mehr oder weniger funktionieren. In einer Lubuntu-15.10-VM durchgegangen (soweit das ohne die Hardware möglich ist):

1
2
3
4
5
6
7
8
9
10
sudo apt-get purge printer-driver-foo2zjs*
sudo apt-get install build-essential checkinstall dc
mkdir -p ~/Downloads/foo2zjs/
cd ~/Downloads/foo2zjs/
wget http://foo2zjs.rkkda.com/foo2zjs.tar.gz
tar zxf foo2zjs.tar.gz
cd foo2zjs/
make
sudo checkinstall -D --install=no
sudo dpkg -i foo2zjs*.deb

Ob nicht einfach das Rausfischen des .ppd-Files aus dem .tar.gz-Archiv genügen würde, möchte der, bei dem das Gerät steht, selbst ausprobieren. Denn ich muß erstmal telefonieren. Über Mannesmann D2.

Installation HP Linux Imaging and Printing

Tutorial wird stetig aktuell gehalten. Hinweis: In Mantic können Abhängigkeiten derzeit nicht aufgelöst werden.
·
Zur Installation von HPLIP (supported Devices, also keine reinen Scanner – ScanJet – deren Modelle von SANE unterschiedlich unterstützt werden) in Lubuntu starte mit [ctrl] + [alt] + [t] ein Terminal und führe über copy & paste komplett aus:

  1. Starte die Printerconfig:
    1
    
    system-config-printer
  2. Entferne den möglicherweise bereits falsch installierten HP!
  3. Schließe die Printerkonfig!
  4. Ziehe den HP über USB ab, falls darüber verbunden!
  5. Deinstalliere konkurrierende Pakete:
    1
    
    sudo apt purge hplip libhpmud0 libsane-hpaio printer-driver-postscript-hp
  6. Installiere das Drucksystem und zum Kompilieren nötige Pakete:
    1
    
    sudo apt install cups build-essential libjpeg62-dev libusb-dev libtool python3-dev
  7. Erstelle nötige Verzeichnisse:
    1
    2
    
    sudo mkdir -p /var/spool/lpd/
    sudo mkdir -p /usr/share/cups/model/
  8. Erstelle das Downloadverzeichnis und wechsele dorthin:
    1
    2
    
    mkdir -p ~/Downloads/hp/hplip/
    cd ~/Downloads/hp/hplip/
  9. Ziehe HPLIP (aktuelle Version vom 2023-11-30):
    1
    
    wget http://netcologne.dl.sourceforge.net/project/hplip/hplip/3.23.12/hplip-3.23.12.run -O hplip-3.23.12.run
  10. Installiere die Treiber:
    1
    
    sh hplip-3.23.12.run
  11. Folge den Instruktionen bis inkl. der Aufforderung “Restart or re-plug in your printer”!
  12. Verbinde den HP über USB, LAN oder WLAN!
  13. Starte die Erstkonfiguration
    1
    
    hp-setup

    und wähle Anschluß und Drucker! Weitere Konfigurationen können über

    1
    
    system-config-printer

    oder über Browser http://localhost:631/printers (localhost temporär in NoScript zulassen, falls installiert) vorgenommen werden.

  14. Manche Modelle benötigen zusätzlich ein binäres Plugin. Falls der Download während der Installationsroutine fehlschlägt (aktuell stimmt z.B. der Pfad nicht mehr, 404) oder übersprungen worden ist, kann die Installation manuell angestoßen werden:
    1
    2
    3
    
    cd ~/Downloads/hp/hplip/
    wget https://www.openprinting.org/download/printdriver/auxfiles/HP/plugins/hplip-3.23.12-plugin.run -O hplip-3.23.12-plugin.run
    sh hplip-3.23.12-plugin.run

Updates werden grafisch angezeigt, funktionieren so aber nicht wirklich. Man kann stattdessen im Terminal ausführen:

1
hp-upgrade

Soll das so installierte hplip deinstalliert werden, ist auszuführen:

1
sudo python ~/Downloads/hp/hplip/hplip*/uninstall.py