Kategoriearchiv: Office

Softwarehinweise und -tipps

XMind (Flatpak) Dateien per Doppelklick öffnen

Ich finde die Mindmaps, die XMind erstellt, einfach hübscher als die, die ich mit Freeplane und Freunden erstellen kann. Also habe ich mir XMind8 als Flatpak installiert.

Leider hat es nicht funktioniert, eine .xmind Datei doppelt zu klicken, um diese dann in XMind zu bearbeiten: da kam immer nur ein leeres XMind-Fenster hoch und ich musste die Datei dann händisch über den file open Dialog des Programms öffnen. Nervig und wenig intuitiv.

Das Problem liegt meiner Meinung nach im Flatpak selbst. Dort wird der an das Flatpak übergebene Dateipfad beim Aufruf weggeworfen. Dann also mit Wrapper Script:

cat > /home/dirk/.var/app/net.xmind.XMind8/data/xmind-open.sh << 'EOF' 
#!/bin/bash 
cd /home/dirk/.var/app/net.xmind.XMind8/data/.app/XMind || exec /app/bin/XMind 
exec ./XMind "$@" 
EOF

Das Script ausführbar machen:

chmod +x /home/dirk/.var/app/net.xmind.XMind8/data/xmind-open.sh

Testen, ob es jetzt funktioniert:

flatpak run --command=/home/dirk/.var/app/net.xmind.XMind8/data/xmind-open.sh --file-forwarding net.xmind.XMind8 @@ /home/dirk/test.xmind @@

Meine .desktop Datei in ~/.local/share/applications/net.xmind.XMind8.desktop sieht nun so aus:

[Desktop Entry] 
Name=XMind 8 
Comment=XMind Mindmapper 
Exec=/usr/bin/flatpak run --branch=stable --arch=x86_64 --command=/home/dirk/.var/app/net.xmind.XMind8/data/xmind-open.sh --file-forwarding net.xmind.XMind8 @@ %F @@ 
Terminal=false 
Type=Application 
Icon=net.xmind.XMind8 
StartupNotify=true 
StartupWMClass=XMind 
MimeType=application/vnd.xmind.workbook;x-scheme-handler/xmind; 
Categories=Office; 
X-Flatpak-Tags=proprietary; 
X-Flatpak=net.xmind.XMind8

Sollte es nun funktionieren, dann noch ein

update-desktop-database

hinterher schicken. Den gemeldeten Fehler zum Mimetype konnte ich ignorieren.

Mehrere Seiten im PDF auf ein Blatt

Mehrere Seiten in einem PDF auf ein einzelnes DIN A4 Blatt drucken geht teilweise auch mit Viewern / Editoren wie z.B. Master PDF Editor. Schneller geht es auf der Shell:

pdfjam --nup 2x1 --landscape --a4paper in.pdf --outfile out.pdf

Das Programm pdfjam ist Teil von texlive-binextra.

Seitenleistengedöhns

Nachdem ich gerade 10 Minuten brauchte, um eine aus Versehen in Libreoffice gelöste rechte Seitenleiste wieder anzudocken:

Wer den Desktop unter KDE über mehrere Monitore hinweg liegen hat, kann wohl so oft Strg Umschalten F10 drücken, wie er will – es passiert schlicht gar nix. Also darauf achten, dass

  1. nur noch ein Libreoffice Fenster offen ist (also alle Dialogfenster geschlossen sind)
  2. für den Andockvorgang das Hauptfenster von Libreoffce auf den Monitor legen, von dem aus es nicht „weiter nach rechts“ geht.

Und schwupp sitzt sie nach Strg Umschalten F10 wieder am rechten Rand, wo sie auch hingehört.

CODE und docker-compose

Wer docker-compose für Collabora CODE nutzt und gerade feststellt, dass der Container von einem restart in den nächsten rutscht:

docker logs --tail 50 --follow --timestamps code-container-name

Findet darin

2022-04-09T05:19:00.304230963Z -e ERR: Use of domain variable is not supported. First host/domain who tries to connect to COOL is always allowed. 
2022-04-09T05:19:00.304248902Z To allow multiple host and its aliases use something like this and pass it as env variable: 
2022-04-09T05:19:00.304251820Z aliasgroup1=https://domain1:443,https://its-alias|its-second-alias:443  
2022-04-09T05:19:00.304254556Z aliasgroup2=https://domain2:443,https://its-alias:443  
2022-04-09T05:19:00.304256886Z For more info: https://sdk.collaboraonline.com/docs/installation/CODE_Docker_image.html

und darf die .env sowie die docker-compose.yml anpassen. Zuerst zur .env:

COLLABORA_USERNAME=admin 
COLLABORA_PASSWORD=supergeheim 
COLLABORA_ALIASGROUP1=https://www.domain1.tld:443,https://domain2\\.tld:443|https://www\\.domain3\\.tld:443

und somit die docker-compose.yml:

version: '3' 
services: 
 code: 
   image: collabora/code:latest 
   restart: unless-stopped 
   environment: 
     - password=${COLLABORA_PASSWORD} 
     - username=${COLLABORA_USERNAME} 
     - aliasgroup1=${COLLABORA_ALIASGROUP1} 
     - extra_params=--o:ssl.enable=true 
   ports: 
     - 9980:9980

Dann flutscht es wieder. Mehr dazu findet mensch hier.

Shrink VM

Was tut man nicht alles? Ich hab hier eine VM mit W10Edu 20H2, die gelegentlich gestartet wird, um damit z.B. Wireshark zu testen, Updates zu installieren, eine einzelne Datei in MSO anzusehen oder mit W10 Privacy nachzusehen, was ich alles unter Arch nicht erdulden muss.

Trotzdem wuchert das Ding über die Zeit vor sich hin und will gelegentlich geschrumpft werden. Das geschieht hier so:

Erst einmal aus W10 heraus mit sdelete Platz schaffen:

sdelete -z "C:"

Dann die VM runterfahren und mit VBoxManage die VDI komprimieren:

vboxmanage list hdds
vboxmanage modifymedium disk /pfad/zur/vm/w10edu.vdi --compact

Am Schluss nach Geschmack wegsichern mit tar – oder auch nicht.

Whiteboard

Lange war ich auf der Suche nach einem möglichst kooperativ verwendbaren Whiteboard und denke nun: ich würde fündig.

https://github.com/cracker0dks/whiteboard

Ist besonders schön im Firefox bedienbar, bietet auch „Ihr dürft nur gucken“-Links zum Teilen, lässt sich in Nextcloud integrieren und macht im Docker keinen Ärger.

Für die Schule ausgerollt und in die Nextcloud integriert – für die Community macht das Frank noch am Wochenende.

Bleibt der Traum von einer Tafel mit der Mächtigkeit von Mebis.

HP Color Laserjet 2550

Da mein HP Color Laserjet 2550 nur noch gelb (und ein klein wenig magenta – links das Bild von der Testseite vor der Reparatur und rechts das Bild danach) drucken wollte, fand ich bei Roland eine Anleitung zur Reparatur, die Mut machte, das mal selbst zu probieren.

Leider war der Link zum sehr hilfreichen / unbedingt notwendigen Service Manual bei ihm tot. Hier ist ein noch funktionierender. Benötigt wird Kapitel 5 „Removal and replacement“. Mensch ist sonst ziemlich verloren – zumindest wenn es wieder an den Zusammenbau geht.

Entfernt werden mussten:

  1. alle Innereien des Druckers (Tonerkartuschen etc.)
  2. rechte und linke Seitenwand
  3. Deckplatte, Rückwand und hintere Abdeckung
  4. Metallkäfig mit der Steuerelektronik auf der Seite des Bedienfeldes

um an den Käfig mit dem rotary-drive (siehe Bilder unten von nach der Reparatur) heran zu kommen, der das defekte Bauteil (solenoid) enthält.

Dieser Metallkäfig selbst ist noch relativ einfach entfernbar. Da dieser jedoch komplett zerlegt werden muss

  • beide Motoren entfernen
  • Metallkasten in zwei Teile zerlegen
  • Solenoid ausbauen

sei allen empfohlen, hier bei jedem Schritt den ursprünglichen Zustand zu fotografieren. Das spart erheblich Zeit und Nerven beim Zusammenbau. Wer das, wie ich, vergisst, ist beim Zusammenbau um jedes Bild im Netz froh, das den ursprünglichen Zustand zeigt [1, 2] 😉

Ich behalf mir hier als Ersatz für den kaputten Filz mit sechs Lagen masking tape der weihnachtlichen Sorte:

Am Ende blieben hier nur zwei abgebrochene Plastiklaschen und zwei Schräubchen über, für die ich beim besten Willen keinen passenden Ort mehr finden konnte. Fast wie bei Ikea. Tut aber auch so.

Nextcloud … mal wieder

Ich warte ja immer gerne, bis die frischen NC Versionen einen gewissen Reifegrad erreichen, bevor ich diese einspiele. Beim Sprung von 17.x auf 18.x dachte ich, 18.0.3 müsste passen, erlebe hier aber eine kleine Hürde nach der anderen.

Ist Talk aktiviert, dann fliegt das Update via occ erst einmal komplett auf die Schnauze und meldet in schönem Rot:

Checking for update of app spreed in appstore
Checked for update of app "spreed" in appstore 
Repair error: Repair step 'OCA\Talk\Migration\FixNamespaceInDatabaseTables' is unknown
PHP Fatal error:  Cannot declare class OCA\Talk\Migration\Version8000Date20200331144101, because the name is already in use in /path/to/somedomain-tld/nextcloud/apps/spreed/lib/Migration/Version8000Date20200331144101.php on line 54

Das lässt sich beheben.

sudo -u www-data php occ app:disable "spreed"
Nextcloud or one of the apps require upgrade - only a limited number of commands are available
You may use your browser or the occ upgrade command to do the upgrade
No such app enabled: spreed

Die letzte Meldung – No such app enabled: spreed – ist irreführend. Ja – eine App „Spreed“ ist nicht eingeschaltet, aber Talk. Und app:disable „Talk“ führt zu nix. Außerdem wirft ja NC beim Update selbst mit Checked for update of app „spreed“ in appstore den Fehler. Anyway. Es hilft. Der Dank geht an freedox.

Alternative: Talk vor dem Upgrade abschalten und dann wieder anschalten, wenn das Update durchgelaufen ist. Erzeugt weniger Puls.

Danach dann

sudo -u www-data php occ upgrade

erneut ausführen, Wartungsmodus wieder abschalten und einloggen, um auf die nächsten Fehler unter nextcloud/index.php/settings/admin/overview blicken zu können. Diese lassen sich weitgehend beheben mit

sudo -u www-data php occ db:add-missing-indices

was allerdings immer noch ranzt ist die dumme Meldung zu

- core
	- INVALID_HASH
		- core/js/mimetypelist.js
	- EXTRA_FILE
		- core/img/filetypes/mindmap.svg

die bezüglich mimetypelist.js schlicht nicht stimmt und sich – je nach Installation – aus dem exakt gleichen Paket auch nicht reproduzieren lässt. Einmal wirft NC diesen Fehler, das andere mal nicht. Toll. Ich ignoriere das nun ebenso wie den Fehler zu mindmap.svg und hoffe auf die nächste Runde.

Nextcloud Talk mit Coturn auf CX11

Einen eigenen Coturn für Videochats über die eigene Nextcloud zu betreiben ist nicht schwer. Gute Anleitungen für den Einstieg sind im Netz zu haben. Lauscht der Coturn auf Port 443, ist man gleich noch die Routerprobleme bei den Nutzern los.

In der Annahme, dass man da nicht genug Ressourcen hinwerfen kann, stellte ich Coturn bei meinen ersten Gehversuchen eine VM unter KVM mit 4 CPUs und 8GB RAM zur Verfügung. Heute weiß ich, dass das overkill ist, wenn das System nur gelegentlich und dann meist nur von wenigen Menschen parallel benutzt wird.

Die Grafik oben ist ein Screenshot aus OMD und zeigt die CPU Auslastung während eines Videotelefonats zwischen zwei Personen auf einem CX11 bei Hetzner (2,96€ / Monat). Top zeigte eine CPU Auslastung von rund 7% – OMD ein wenig mehr. Aber festhalten lässt sich, dass für eine NC-Talk-Familieninstanz der CX11 ausreichend ist – und vermutlich sogar für eine Schule, weil es sehr selten dazu kommen dürfte, dass mehrere L gleichzeitig ihren S Nachhilfe via Talk geben.

Jetzt hängen vier Nextcloud Instanzen am CX11 – zwei private und zwei Kollegien. Mal sehen, was passiert.

Joplin dual

Mich trieb die Idee um, Joplin nicht nur selbst zu nutzen, sondern auch mit anderen zusammen.

Ein einzelnes Joplin mit anderen zusammen (also: gemeinsam) zu verwenden ist kein Problem: Voraussetzung hierfür ist, dass alle Beteiligten einen Zugang zu einer Nextcloud haben. Dann teilt man in der Nextcloud den Ordner, in dem Joplin seine Daten ablegt. Sofern man nicht gleichzeitig an der gleichen Notiz herum schreibt, klappt das – synchrone Kollaboration funktioniert also nicht, sondern füllt nur den Ordner „Konflikte“.

Will man weiterhin sein eigenes Joplin nutzen, dann legt man sich für das gemeinsame ein gesondertes Profil lokal an und startet Joplin mit diesem:

/home/.../.joplin/Joplin.AppImage --profile /home/.../.config/joplin-2/

Dieses zweite Joplinprofil konfiguriert man sich dann auf einen frischen Ordner in der Nextcloud, den man wiederum für die Kooperationspartner als Share freigibt.

Dann noch ein alias dazu, damit man dieses Joplin einfacher starten kann – und voila! Was leider nicht klappen wollte hier, war, beide Joplins parallel offen zu haben.