01 Index

Stargazer in the Universe Yuki Kamiki

Observer's Space
02

Privacy and Whatsoever

It’s been a while since I last posted. I spent a meaningful year in the university, or meaningless, depends on your standards.

I’m trying to find something to write on, but aside from vibe-coding an Arduino board to control a three-wheeled robot, doing some random analysis on energy storage that convinces nobody, and getting some 10s in exams while some 6s in others, there’s nothing that I actually want to write on.

Read more

03

Notes on Setting Up and Backing Up GoToSocial

Installing GTS

I got an Oracle Cloud instance, so I decided to set up my own Fediverse instance. After some thought, I went with GoToSocial — it’s fairly lightweight and works with any Mastodon API-compatible client. The downside is that it’s pretty bare-minimum: features like emoji reactions and quote posts are absent.

The official GTS docker-compose.yaml can be fetched like this:

BASH
wget https://codeberg.org/superseriousbusiness/gotosocial/raw/branch/main/example/docker-compose/docker-compose.yaml
YAML
services:
  gotosocial:
    image: docker.io/superseriousbusiness/gotosocial:latest
    container_name: gotosocial
    user: 1000:1000
    networks:
      - gotosocial
    environment:
      # Change this to your actual host value.
      GTS_HOST: example.org
      GTS_DB_TYPE: sqlite
      # Path in the GtS Docker container where
      # the sqlite.db file will be stored.
      GTS_DB_ADDRESS: /gotosocial/storage/sqlite.db
      # Change this to true if you're not running
      # GoToSocial behind a reverse proxy.
      GTS_LETSENCRYPT_ENABLED: "false"
      # Set your email address here if you
      # want to receive letsencrypt notices.
      GTS_LETSENCRYPT_EMAIL_ADDRESS: ""
      # Path in the GtS Docker container where the
      # Wazero compilation cache will be stored.
      GTS_WAZERO_COMPILATION_CACHE: /gotosocial/.cache
      ## For reverse proxy setups:
      GTS_TRUSTED_PROXIES: "172.18.0.1/16"
      ## Set the timezone of your server:
      #TZ: UTC
    ports:
      - "443:8080"
      ## For letsencrypt:
      #- "80:80"
      ## For reverse proxy setups:
      #- "127.0.0.1:8080:8080"
    volumes:
      # Your data volume, for your
      # sqlite.db file and media files.
      - ~/gotosocial/data:/gotosocial/storage
      # OPTIONAL: To mount volume for the WAZERO
      # compilation cache, for speedier restart
      # times, uncomment the below line:
      #- ~/gotosocial/.cache:/gotosocial/.cache
    restart: "always"

networks:
  gotosocial:
    ipam:
      driver: default
      config:
        - subnet: "172.18.0.0/16"
          gateway: "172.18.0.1"

Since I already had Caddy running on the machine, I commented out all the reverse-proxy-related parts.

Read more

04

Quick Installation Matlab 2025b on Arch

Since I’m on Wayland, the best way to install Matlab should be mpm.
The Wiki page worked for me and the steps I executed include:

BASH
yay matlab-mpm
mpm install --release=R2025b --destination=~/matlab MATLAB 
#ofc, you can change the destination

Normally, you should be able to just execute ~/matlab/bin/glnxa64/MathWorksProductAuthorizer.sh and finish activating your license. However it didn’t went that smooth for me, because recent gnutls update (likely 3.8.10-1 or newer) breaks the TLS handshake in MATLAB’s bundled licensing libraries (libmwinstall\_activationwsclientimpl.so and libmwlmgrimpl.so), causing the segfault when the tool tries to connect to MathWorks servers.
So I ran these to make Matlab use the old version of gnutls :

Read more

05

Fix Copy SMS Code on Graphene

You can read the detail description in this issue.

The fix is, find out the listener service with this adb command:

SHELL
adb shell pm dump io.github.jd1378.otphelper | grep -i "notification\|listener"

And you can see it’s called io.github.jd1378.otphelper/.NotificationListener.

So, we grant it special access to read notifications (which is not possible via settings GUI, and I don’ know why):

SHELL
adb shell cmd notification allow_listener io.github.jd1378.otphelper/.NotificationListener

Read more

06

How to Make Microsoft Bluetooth Mouse 3600 Work in Linux Windows Dual Boot

Before moving in the Netherlands, I used a USB mouse, and as a result I never bothered for pairing issues on dual booting Linux/Windows. However, I found Microsoft Bluetooth Mouse 3600 specifically helpful as it functions smoothly even without a mousepad.

Certainly, you can read this detailed tutorial from Arch Wiki, so I won’t explain too much on the general process.

The problem is, the table for Bluetooth 5.1 devices does not cover the model Microsoft Bluetooth Mouse 3600, and I have to refer to “Other devices”, the guidance of which does not really work for me.

Read more

07

Adding Printer Support for Epson L3150 on Arch Linux

My printer is on network at address 192.168.138.250 .

First add CUPS:

ZSH
sudo pacman -Sy cups cups-browsed bluez-cups cups-pdf
sudo systemctl enable cups    
sudo systemctl start cups

Then some other dependencies (and drivers, if you want to use some other type than Epson L3150):

ZSH
sudo pacman -Sy system-config-printer
sudo pacman -Sy nss-mdns
sudo pacman -Sy foomatic-db foomatic-db-ppds  
sudo pacman -S foomatic-db-nonfree foomatic-db-nonfree-ppds

And we should install the driver for L3150, which can be achieved with an AUR package (Epson only offer .deb and .rpm packages officially):

Read more

09

Interpreting Internet.nl Test Results

Disclaimer: I have been a user of almost every email provider mentioned below, and I am not affiliated with any of them.

You can read Forward Email’s comparison with many providers here: https://forwardemail.net/en/blog/forward-email-vs-mailbox-org-email-service-comparison , by substituting mailbox.org with others on their list.

In short, Forward Email has some wrong information. They attempt to achieve full score in every security test and prove they are superior to their competitors with scores. I don’t know what is driving Forward Email towards being a pupil, and it seems like many privacy seekers get trapped into how high they score in the Internet.nl tests.

Read more

10

Arch Setup

Just performed a fresh install of Arch, and try to use zsh instead of bash.

To make it remember history, and inherit nice aliases from bash , make a file .zshrc with the following:

SHELL
# Created by newuser for 5.9
export PATH=$PATH:/home/user/.local/bin
# uncomment the line below if you feel like using oh-my-posh 
# eval "$(oh-my-posh init zsh --config 'catppuccin')" 
alias ls='ls --color=auto'
alias grep='grep --color=auto'
PS1='[\u@\h \W]\$ '
export XDG_DATA_DIRS="/var/lib/flatpak/exports/share:/home/user/.local/share/flatpak/exports/share:/home/user/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share/:/usr/share/"
HISTFILE=~/.zsh_history
# How many commands to store in history
HISTSIZE=10000
SAVEHIST=10000
setopt SHARE_HISTORY
# uncomment the lines below if you installed Fcitx 
# export XMODIFIERS="@im=fcitx"
# export GTK_IM_MODULE=fcitx
# export QT_IM_MODULE=fcitx

By default, GNOME doesn’t recognize tray icons from applications. This would be a headache for applications that starts up silently and automatically minimizes to tray. Head to Flatpak manager and install Extension Manager, open it and search for AppIndicator and KStatusNotifierItem Support, install the extension and you’ll be able to see icons showing up.

Read more