Linux Fedora 28 and Avantree ANC032 wireless headphone

10 September 2018 | 4 min read

I just bought a headphone from Shopee (use referal code RYUUN222 to register and get discount!) website. I planned to buy one since last year but keep pending and now it suitable time to grab what I want.

The original plan is to buy Sony WH-1000XM2. I still remember on Jan 2018, I come back from Hong Kong to Singapore (I arrived at Changi Airport). I want to paid Sony WH-1000XM2 from the store inside the airport but my CC is limit per day, so I need to cancel my purchase :’(

I looking some decent and more cheaper headphone. I looking an wireless over ear head phone with noise cancelling featured.

My personal laptop have built-in bluetooth adapter and audio jack port are broken.. so wireless is my solution.

Why I looking headphone with noise cancelling feature? Currently, I worked as software developer of warehouse conveyor system, so during comisioning I will be on-site and the noise from conveyor and other machine inside warehouse are very annoying and disturbing when you need to focus doing stuff.

Seem Avantree just released new product, a wireless headphone with noice canceling feature and the price is much cheaper than other brands.

(read more)


Software development resources

07 September 2018 | 1 min read

There are 3 attributes necessary for a software project to succeed:

Time - it’s a limited and finite resource,

Money - Without money, don’t talk

and Quality - Without quality, you can’t have long-term sustainability Robbi Nespu

Do you understand, sir?


Disable plymouth and boot much faster than before!

04 September 2018 | 2 min read

My workstation took more than a minute to boot into X

$ systemd-analyze time
Startup finished in 1.890s (kernel) + 4.702s (initrd) + 1min 20.163s (userspace) = 1min 26.756s
graphical.target reached after 58.148s in userspace

By disable plymouth at boot and in the initrd, I got much better result

$ systemd-analyze time
Startup finished in 1.911s (kernel) + 4.646s (initrd) + 37.884s (userspace) = 44.442s
graphical.target reached after 37.870s in userspace

(read more)


Clean-up journal logs

03 September 2018 | 1 min read

Pfu.. seem size limit of journal log are almost reaching 2 GB

$ du -h /var/log/journal/ | tail -n 1
1.8G    /var/log/journal/

I want to clean this logs. Now flush all journal data from /run into /var

$ journalctl --flush

Check and verify our logs condition are PASS or FAILED

$ journalctl --verify

How was the result? Looking good? let’s free some space of archived journal files and only store 1 week logs

$ journalctl --vacuum-size=30M
$ journalctl --vacuum-time=1weeks

By default the global journal configuration of The maximum size of the persistent journal aka SystemMaxUse are commented

$ grep SystemMaxUse /etc/systemd/journald.conf
#SystemMaxUse=

You can uncommenting and put some value, eg SystemMaxUse=30M, but I prefer to use the drop-in snippets configuration override mechanism rather than editing the global configuration file.

$ sudo mkdir -p /etc/systemd/journald.conf.d/ 
$ sudo touch /etc/systemd/journald.conf.d/00-journal-size.conf 
$ sudo bash -c 'cat > /etc/systemd/journald.conf.d/00-journal-size.conf  << 'EOF'
[Journal]
SystemMaxUse=30M
EOF'

You can change the value 30M to what ever size you prefered. To apply the new limit, you need to restart the services as superuser.

$ systemctl status systemd-journald.service
$ sudo systemctl restart systemd-journald.service
$ systemctl status systemd-journald.service

What the heck is "Bolt.services"

02 September 2018 | 3 min read

Hurm.. I notice slow boot startup on my Fedora 28 workstation

[rnm@robbinespu (/home/rnm)] 
$ systemd-analyze time
Startup finished in 1.890s (kernel) + 4.702s (initrd) + 1min 20.163s (userspace) = 1min 26.756s
graphical.target reached after 58.148s in userspace

So plymouth-quit-wait service took more than 25 seconds and.. bolt services also part of the culprit

[rnm@robbinespu (/home/rnm)] 
$ systemd-analyze blame | head
         25.124s bolt.service
         25.118s plymouth-quit-wait.service
         13.389s firewalld.service
         12.672s akmods.service
         11.922s udisks2.service
         11.453s accounts-daemon.service
          9.690s vmware.service
          9.125s lvm2-monitor.service
          8.730s dkms.service
          8.085s systemd-udev-settle.service

I never heard of bolt.services , it’s apparently a Thunderbolt system deamon to manage thunderbolt 3 devices.

[rnm@robbinespu (/home/rnm)] 
$ dnf info bolt
Last metadata expiration check: 2 days, 6:51:24 ago on Sat 01 Sep 2018 09:06:59 AM +08.
Installed Packages
Name         : bolt
Version      : 0.4
Release      : 1.fc28
Arch         : x86_64
Size         : 281 k
Source       : bolt-0.4-1.fc28.src.rpm
Repo         : @System
From repo    : updates-testing
Summary      : Thunderbolt device manager
URL          : https://github.com/gicmo/bolt
License      : LGPLv2+
Description  : bolt is a system daemon to manage thunderbolt 3 devices via a D-BUS
             : API.  Thunderbolt 3 features different security modes that require
             : devices to be authorized before they can be used. The D-Bus API can be
             : used to list devices, enroll them (authorize and store them in the
             : local database) and forget them again (remove previously enrolled
             : devices). It also emits signals if new devices are connected (or
             : removed). During enrollment devices can be set to be automatically
             : authorized as soon as they are connected.  A command line tool, called
             : boltctl, can be used to control the daemon and perform all the above
             : mentioned tasks.

I don’t know and where it comes and apparently active on my system

[rnm@robbinespu (/home/rnm)] 
$ systemctl status bolt.service
● bolt.service
   Loaded: masked (/dev/null; masked)
   Active: active (running) since Mon 2018-09-03 14:11:53 +08; 1h 50min ago
 Main PID: 1946 (boltd)
    Tasks: 3 (limit: 4915)
   Memory: 1.7M
   CGroup: /system.slice/bolt.service
           └─1946 /usr/libexec/boltd

Sep 03 14:11:28 robbinespu systemd[1]: Starting Thunderbolt system service...
Sep 03 14:11:28 robbinespu boltd[1946]: bolt 0.4 starting up.
Sep 03 14:11:28 robbinespu boltd[1946]: config: loading user config
Sep 03 14:11:53 robbinespu boltd[1946]: store: loading devices
Sep 03 14:11:53 robbinespu boltd[1946]: power: force_power support: no
Sep 03 14:11:53 robbinespu boltd[1946]: udev: enumerating devices
Sep 03 14:11:53 robbinespu systemd[1]: Started Thunderbolt system service.
Sep 03 15:58:43 robbinespu systemd[1]: bolt.service: Current command vanished from the unit file, execution of the command list won't be resumed.

Even though I don’t appear to have any Thunderbolt devices…

[rnm@robbinespu (/home/rnm)] 
$ boltctl list

As quick solution let just permanently disable the service.

[rnm@robbinespu (/home/rnm)] 
$ systemctl mask bolt
Created symlink /etc/systemd/system/bolt.service → /dev/null