EXAPUNKS

6. Juni 2020 · Spiele · andreas · Kein Kommentar
Unknown Network 1

Durch den Artikel “Programmierspiele: Coding-Logik spielend erlernen” in der c’t auf das Spiel aufmerksam geworden, war der aktuelle “Summer Sale” bei GOG eine gute Gelegenheit, EXAPUNKS DRM-frei zum kleinen Preis zu erwerben.

EXAPUNKS versprüht eine geballte Ladung Retro-Charme inklusive ausdruckbarer Hacker-Magazine, so daß man sich in kürzester Zeit zurück im Kinderzimmer zwischen C64 und 64’er mitten bei den ersten Assembler-Gehversuchen wiederfindet … Zur endgültigen Glückseeligkeit fehlt eigentlich nur noch der INPUT ASS.

Hier die ersten - nicht optimierten und / oder aufbereiteten - Lösungen für die Programmieraufgaben. Sofern mehrere EXAs im Spiel sind, wurde nach den Tutorials die Benennung an die Aufgabe(n) angepasst, z.B. “ReaD” oder “WRite”.

Weiterlesen


Internet-Zugriff für Sublime Text unter Debian unterbinden

15. Mai 2020 · Betriebssysteme · andreas · Kein Kommentar

Als Texteditor ist hier Sublime Text in der lizenzierten Version im Einsatz.

Es ist aus meiner Sicht vollkommen legitim, daß ein Lizenzinhaber gelegentlich überprüft, ob die zugewiesene Lizenz noch gültig ist. Sublime Text führt diese Online-Überprüfung aber nach jedem Start durch, was im Hinblick auf die Privatsphäre suboptimal ist - letzendlich geht es im Rahmen der erworbenen Lizenz die Entwickler nichts an, ob der Editor fünfzig mal am Tag oder um drei Uhr nachts gestartet wird.

Eine Diskussion mit dem Thema “Sublime Text calling home to license.sublimehq.com on every start?” im offiziellen Sublime Text-Forum hat leider zu keinem greifbaren Ergebnis geführt. Da auch die Sales FAQ nicht verlangt, daß das Programm nach Hause telefonieren darf / kann / soll / muss, ist eine anwendungsbezogene Sperrung des Netzwerk-Zugriffs eine naheliegende Option.

Weiterlesen


Minecraft Pocket Edition: Welten sichern

14. Mai 2020 · Spiele · andreas · 20 Kommentare

Auch wenn der Wechsel eines Gerätes eine schöne Möglichkeit zum Aufräumen ist, so gibt es doch einiges, was mit auf das neue Gerät wandern soll. Leider gibt es gerade bei Mobilgeräten - im Gegensatz zum PC - nur selten die Möglichkeit, einen Spielstand manuell zu exportieren und auf einem anderen Gerät weiterzuverwenden.

Screenshot

Die Minecraft Pocket Editon bietet unter “Profil” in den Einstellungen die Möglichkeit, als Dateispeicherort statt “Anwendung” die Option “Extern” zu wählen. “Extern” bezieht sich hierbei nicht auf das Gerät selbst, sondern lediglich auf den Speicherplatz innerhalb des Geräts, d.h. die Daten entweder innerhalb des geschützten Anwendungsspeichers oder außerhalb auf der (im Zweifelsfall virtuellen) SD-Karte abzulegen.

Diese Beschreibung bezieht sich auf die Spielstände der Android Minecraft Pocket Editon Version 1.14.60, bei anderen Versionen kann die Vorgehensweise unterschiedlich sein.

Leider gibt es keine Möglichkeit, eine Welt von einem auf den anderen Speicherort zu übertragen. Ist eine Welt einmal im internen Anwendungsspeicher abgelegt, so gibt es keine einfache Möglichkeit, sie nach “Extern” zweck Sicherung zu verschieben.

Auf einem ge-root-eten Gerät kann man dies trotzdem recht einfach tun, die Welten finden sich im Anwendungsspeicher unter

/data/data/com.mojang.minecraftpe/games/com.mojang/minecraftWorlds/

wobei jede Welt in mehreren Dateien innerhalb eines Unterordners gespeichert ist. Wer sortieren will, findet den sprechenden Namen einer Welt in der Datei “levelname.txt”.

Vor dem Verschieben (Anwendung schließen!) ist es sinnvoll, den Dateispeicherort auf “Extern” zu stellen und eine neue Welt anzulegen. Das Programm erstellt dann die benötigten Ordnerstrukturen unter “/storage/emulated/0”, so daß ein manuelles Anlegen entfällt.

Anschließend müssen lediglich die gewünschten Unterverzeichnisse aus dem oben genannten Ordner in das Verzeichnis

/storage/emulated/0/games/com.mojang/minecraftWorlds/

kopiert oder verschoben werden.


Pandemiebär

1. Mai 2020 · Funstuff · andreas · Kein Kommentar

Zeitsynchronisierung mit systemd

27. April 2020 · Betriebssysteme · andreas · Kein Kommentar

Sofern ein Linux-System systemd verwendet muß zum Abgleich der Systemzeit – sofern dieses nicht als Zeitserver für andere Systeme arbeiten sollen – kein ntp mehr insalliert werden.

Es reicht die Anpassung der Datei “/etc/systemd/timesyncd.conf”

$ sudo vi /etc/systemd/timesyncd.conf

in welcher dann in der Zeile “NTP=” der gewünschte Zeitserver eingetragen wird.

[Time]
NTP=zeitserver.local
FallbackNTP=0.debian.pool.ntp.org 1.debian.pool.ntp.org 2.debian.pool.ntp.org 3.debian.pool.ntp.org
RootDistanceMaxSec=5
PollIntervalMinSec=32
PollIntervalMaxSec=2048

Nach Änderung der Datei wird der Dienst “systemd-timesyncd.service” neu gestartet - das war’s.

$ sudo systemctl restart systemd-timesyncd.service

Anschließend kann die Konfiguration des Diensts mittels

$ timedatectl status
               Local time: Mo 2020-04-27 21:19:40 CEST
           Universal time: Mo 2020-04-27 19:19:40 UTC
                 RTC time: Mo 2020-04-27 19:19:40
                Time zone: Europe/Berlin (CEST, +0200)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

überprüft werden. Wird der Status des “NTP service” als “inactive” angezeigt, so ist ein

$ timedatectl set-ntp true

notwendig, um die Synchronisation zu aktivieren. Detaillierte Informationen erhält man entweder über

$ timedatectl timesync-status
       Server: 1.2.3.4 (zeitserver.local)
Poll interval: 1min 4s (min: 32s; max 34min 8s)
         Leap: normal
      Version: 4
      Stratum: 4
    Reference: AF0149C
    Precision: 1us (-21)
Root distance: 31.249ms (max: 5s)
       Offset: -1.759ms
        Delay: 1.972ms
       Jitter: 0
 Packet count: 1
    Frequency: +17,237ppm

oder mit Hilfe von

$ timedatectl show-timesync
SystemNTPServers=zeitserver.local
FallbackNTPServers=0.debian.pool.ntp.org 1.debian.pool.ntp.org 2.debian.pool.ntp.org 3.debian.pool.ntp.org
ServerName=zeitserver.local
ServerAddress=1.2.3.4
RootDistanceMaxUSec=5s
PollIntervalMinUSec=32s
PollIntervalMaxUSec=34min 8s
PollIntervalUSec=2min 8s
NTPMessage={ Leap=0, Version=4, Mode=4, Stratum=4, Precision=-21, RootDelay=17.333ms, RootDispersion=18.478ms, Reference=AF0149E, OriginateTimestamp=Mon 2020-04-27 21:05:29 CEST, ReceiveTimestamp=Mon 2020-04-27 21:05:29 CEST, TransmitTimestamp=Mon 2020-04-27 21:05:29 CEST, DestinationTimestamp=Mon 2020-04-27 21:05:29 CEST, Ignored=no PacketCount=2, Jitter=329us }
Frequency=1353001