Planet Slackware Indonesia

February 27, 2018

Willy Sudiarto Raharjo

Fixing Spectre/Meltdown in 14.2

Patrick has silently update the kernels in -stable releases to the latest kernel release found in 4.4.118. This release is known to fix the remaining Spectre/Meltdown vulnerabilities backported from mainline kernels, 4.15.x. Upstream developers are working to restore the performance penalty after the initial patch for KPTI may have significant performance loss up to 30%. It's still being baked and we might see them backported into older kernel releases, especially LTS version being used by many distributions.

I checked using the same script and now here's the results:

CVE-2017-5753 [bounds check bypass] aka 'Spectre Variant 1'
* Checking whether we're safe according to the /sys interface:  YES  (kernel confirms that the mitigation is active)
> STATUS:  NOT VULNERABLE  (Mitigation: __user pointer sanitization)

CVE-2017-5715 [branch target injection] aka 'Spectre Variant 2'
* Checking whether we're safe according to the /sys interface:  YES  (kernel confirms that the mitigation is active)
> STATUS:  NOT VULNERABLE  (Mitigation: Full generic retpoline)

CVE-2017-5754 [rogue data cache load] aka 'Meltdown' aka 'Variant 3'
* Checking whether we're safe according to the /sys interface:  YES  (kernel confirms that the mitigation is active)

by Willy Sudiarto Raharjo ( at February 27, 2018 04:36 PM

February 24, 2018

Willy Sudiarto Raharjo

Moving to 64 bit

When i bought my new desktop at home, i already had a plan to reinstall my old desktop with Slackware64, but i didn't specify the timeframe or even the version i'm going to install with. The old one was 32 bit since i got it installed since 2009 and it has been working well so far, but it's getting slower for my needs where i got to use virtual machines to build packages for MATE and Cinnamon. It is a dual-core E5300 Intel CPU with 4 GB of RAM, 320 GB + 1 TB hard drive, and NVidia GeForce 7050.

Last week, i decided to try to remove Slackware from my old laptop and replace it with Solus 3. It was a great distro and it worked well on my laptop and probably my family could use it since i have a new laptop in place since last year. So yesterday i had an idea to try Solus 3 on my old desktop and instantly i reinstalled it using Solus 3 written to a flash drive. Everything was perfectly good until i need to install the NVidia driver legacy (304.xx). It wasn't working well on my system, so i decided it was a good idea to return back to Slackware, but this time it's 64 bit. So i installed Slackware64-14.2 from an official DVD i got from Slackware Store and have it ready in no time, thanks to the local repository i had on my computer. Installation was fast as usual and got everything upgraded to the latest -stable updates.

I'm waiting for the next Slackware 15.0 gets released and i'm going to upgrade this machine to 15.0. I'm pretty sure it's going to be another rock-solid release since i have been using it on my new desktop and laptop. It can be considered as a testbed for migrating the servers to Slackware 15.0 as well.

With this migration, i'm saying good bye to 32 bit architecture. It was a pleasant journey since my old time in elementary school where i got to learn computers for the first time, but it's now the 64 bit era for me. It was a little bit late, but at the end i move on. I do still have 1 machine that's using 32 bit, which is my wife's computer and i will probably leave that for now since it's working well and it's still good enough for her and kids' requirements.

by Willy Sudiarto Raharjo ( at February 24, 2018 11:11 PM

February 09, 2018

Willy Sudiarto Raharjo

Spectre/Meltdown Finally Fixed in -current

Patrick has just pushed a new kernel in -current branch which is based on 4.14.x branch, which finally fixed the Spectre/Meltdown vulnerabilities as the IBPB support has been included in this release by Ashok Raj of Intel (See commit: d395d69de67ea95760e1f207eb0f6fdfbcb6e069. I have confirmed it by using this script. This batch of update also bump dbus, qpdf, nasm, MPlayer, mozilla-firefox and samba.

Here's the result on my AMD Ryzen machine:
CVE-2017-5753 [bounds check bypass] aka 'Spectre Variant 1' 
* Mitigated according to the /sys interface:  YES  (kernel confirms that the mitigation is active)
* Kernel has array_index_mask_nospec:  YES  (1 occurence(s) found of 64 bits array_index_mask_nospec())
> STATUS:  NOT VULNERABLE  (Mitigation: __user pointer sanitization)

CVE-2017-5715 [branch target injection] aka 'Spectre Variant 2'
* Mitigated according to the /sys interface:  YES  (kernel confirms that the mitigation is active)
* Mitigation 1
  * Kernel is compiled with IBRS/IBPB support:  NO
  * Currently enabled features
    * IBRS enabled for Kernel space:  NO
    * IBRS enabled for User space:  NO
    * IBPB enabled:  NO
* Mitigation 2
  * Kernel compiled with retpoline option:  YES
  * Kernel compiled with a retpoline-aware compiler:  YES  (kernel reports full retpoline compilation)
  * Retpoline enabled:  NO
> STATUS:  NOT VULNERABLE  (Mitigation: Full AMD retpoline)

CVE-2017-5754 [rogue data cache load] aka 'Meltdown' aka 'Variant 3'
* Mitigated according to the /sys interface:  YES  (kernel confirms that your CPU is unaffected)
* Kernel supports Page Table Isolation (PTI):  YES
* PTI enabled and active:  NO
* Running as a Xen PV DomU:  NO
> STATUS:  NOT VULNERABLE  (your CPU vendor reported your CPU model as not vulnerable)

by Willy Sudiarto Raharjo ( at February 09, 2018 02:20 PM

February 07, 2018

Willy Sudiarto Raharjo

MATE 1.20 Released

It's a little bit behind the original schedule, but MATE 1.20 is now released for public. It's been a great development cycle and it seems their efforts came to fruit even with last minute commits on adding HiDPI support.

Here's the highlight for MATE 1.20:
  • MATE Desktop 1.20 supports HiDPI displays with dynamic detection and scaling.
    • HiDPI hints for Qt applications are also pushed to the environment to improve cross toolkit integration.
    • Toggling HiDPI modes triggers dynamic resize and scale, no log out/in required.
  • Marco now supports DRI3 and XPresent, if available.
    • Frame rates in games are significantly increased when using Marco.
  • Marco now supports drag to quadrant window tiling, cursor keys can be used to navigate the Alt + tab switcher and keyboard shourtcuts to move windows to another monitor were added.
  • Support for Global Menu providers such as vala-panel-appmenu has been added.
  • MATE Panel has much improved Status Notifier Items (SNI) support.
  • Bookmarks now support GTK3+ locations.
  • MATE Terminal now supports background images, adds solarised themes and keybindings to switch tabs.
  • Atril, the document viewer, has had a massive overhaul and is better in every single way.
    • In particular accessibility support for visually impaired users is considerably improved.
    • Caret navigation has been added.
  • The Invest applet has been dropped from MATE Applets.
    • The API, provided by Yahoo, has been discontinued and there is no reputable drop in replacement available.
  • Panel applets now size correctly based on the units being displayed and many graphs are dynamically scaled.
  • MATE Themes have seen significant improvements to fully implement all style classes exposed by GTK 3.22
  • Engrampa, the archive viewer, has improved support for encrypted 7z archives.
  • MATE Sensors Applet (finally) supports udisks2.
  • OpenBSD authentication is supported in MATE Screensaver and minizip in Atril supports more BSD variants.
  • A-n-d for distro maintainers we’ve bumped the minimum GTK3+ and GLib requirements.
    • GTK 3.22 and GLib 2.50 or newer are required to build MATE Desktop 1.20.
If you look at the last entry, you will notice that it would be impossible to build MATE 1.20 on top of Slackware 14.2 since it's using older version of GTK+3 and GLIB libraries. Therefore, i only provide binary packages for x86_64 architecture. These packages will then be used by Eric Hameleers to create a Slackware Live ISO which is using MATE instead of KDE or any other DE. It can be used as a testing environment or demo showcase. If you need 32 bit packages, i would suggest to clone the project SlackBuild in GitHub and use it to build your own package. You can use the mate-build-{deps,base,extra}.sh script to automatically build them and install them according to the correct build order. You can grab the sources here.

by Willy Sudiarto Raharjo ( at February 07, 2018 03:42 PM

January 31, 2018

Willy Sudiarto Raharjo

LibreOffice 6.0.0 Released

At the end of January, The Document Foundation has released LibreOffice 6.0, a new major release for their office suite that includes so many new and interesting features:
  • Support for OpenPGP to digitally sign documents
  • Better interoperability on OOXML formats
  • New ePUB export and QuarkXPress import support
  • New online HELP system
  • Default slide size has been switched to 16:9
  • New template for Impress
  • New form menu to create PDF forms
  • Enhanced find toolbar
  • More 1.2 ODF-compliant functions
  • Cell range export to PNG/JPG
  • Better NotebookBar
  • Improved MailMerge functions
  • New splash screen
For more detailed changes, please refer to the Release Notes or watch the video:

At this moment, i have pushed the changes for SBo and it will be part of the next public update, which will be this weekend.

by Willy Sudiarto Raharjo ( at January 31, 2018 01:36 PM

January 29, 2018

Ali Ahmadi

Mencoba Xfce GTK+3 di Slackware Linux

بِسْمِ اللهِ الرَّحْمٰنِ الرَّحِيمِ Lingkungan desktop Xfce merupakan salah satu lingkungan desktop bebas untuk sistem operasi Unix dan mirip Unix yang terkenal memiliki antarmuka yang sederhana namun tetap cantik, ramah pengguna, ringan, cepat, serta memiliki penggunaan sumber daya sistem yang cukup rendah. Saat ini lingkungan desktop Xfce ini sedang dalam proses pengembangan untuk beralih dari … Lanjutkan membaca Mencoba Xfce GTK+3 di Slackware Linux

by idnux at January 29, 2018 02:30 PM

January 26, 2018

Willy Sudiarto Raharjo

What's New in 2018

Welcome to 2018.

It's been almost a month without any single post and i think it's about time that we catch up with all Slackware changes in -current branch as they are getting more excited in this year.

There was a chaos in the early of January when Spectre/Meltdown attack was disclosed. Many vendors/upstreams are releasing new version, helping downstream projects, and backporting to older releases as far as they can. It's still a in-progress effort by many projects and we will still likely to see many changes in the following months, especially in the kernel area.

Back to Slackware development, Patrick has just pushed a new GCC release (7.3.0) which has support for -mindirect-branch=thunk-extern flag which is needed to provide full mitigation of Spectre variant 2 and also push a new kernel built with CONFIG_RETPOLINE=y.Fixes to Meltdown has been pushed earlier when he delivered Linux Kernel 4.14.14 with KPTI enabled. As for Spectre variant 1, it all depends on microcode update. If you are AMD users, you can easily get it by updating to the latest kernel-firmware package found in -current. Intel users will have to install intel-microcode from SBo repository (it's best to be installed alongside with iucode_tool).

Several new packages has been introduced in the current tree since November 2017:
  • libunwind
  • id3lib
  • easytag
  • opus-tools
  • opus
  • opusfile
  • speex
  • Mako
  • libsodium
  • xf86-video-vboxvideo
  • lzlib
  • plzib
  • man-db
  • talloc
  • tdb
  • tevent
  • intel-vaapi-driver
  • libva-utils
Most of the packages found in -current tree has been updated to the latest version, but i'm still waiting for the last 2 of my wishlist:
  • Migrate to Qt5 and KDE 5
  • Migrate to OpenSSL 1.1.x (Support TLS 1.3).
AlienBOB has published his work on latest KDE 5 and even published a new Plasma5 Live ISO for testing. I have tried to run the ISO image on a virtual machine environment, install to virtual hard drive, and everything works out of the box. It's simply amazing and i can't wait to get KDE 5 merged to Slackware-Current as the underlying packages has been declared LTS by upstream and it's a good base for Slackware since it will have long support from upstream. Slackware itself is known to have a good long support by Patrick himself.

by Willy Sudiarto Raharjo ( at January 26, 2018 01:54 PM

December 31, 2017

Willy Sudiarto Raharjo

Closing on 2017

It's almost the end of the year 2017 and things are looking great for Slackware development as -current gets more mature everyday with contributions from many people. It's not yet considered Alpha or Beta 1 yet, but if you look at the CHANGES_AND_HINTS, you will notice a lot of packages gets added in this cycle (rust, meson, python3, SDL2, FFmpeg, libwebp, libsodium, libinput, vulkansdk, dovecot, libbluray, and xorriso are some of the big one) and we also have ash -> dash, slocate -> mlocate, man -> man-db, sendmail -> postfix and tetex -> texlive substitution. Almost all of my wishlist (except for the last two by the time i wrote this few days before it was scheduled to be posted while i am away) are now included in -current as well (i hope they will all get approved for Slackware 15.0). With Patrick being more active in LQ, more reports are coming in on this thread (now changed into a new thread). Issues gets found quickly and resolved in short time.

Meanwhile, KDE has just released their KDE Applications 17.12 that gets rid of KDE 4 completely. Eric Hameleers has been working on that and he has posted on his blog about his work. A new LiveSlack ISO is also available as well with all those changes. He is currently working on testing wayland on top of Slackware-Current and i think he has nailed it with his progress in November. More tweaks are still needed to makes every applications are working well, but overall it's working already.

MATE developers have decided to loosen the release schedule to one release per year instead of two, which was following Ubuntu release cycle. By having longer release schedule, the developers has more time to provide bug fix releases as they did with 1.18.x at this moment. In the past, stable releases are only supported for a short time since they need to prepare for next release, causing some features not yet implemented. They are planning to release MATE 1.20 in January (unless there's a delay) but it will not be possible to install it on top of Slackware 14.2 since they have raised the GTK+3 version requirements. It enables them to remove old codes and also fix many bugs that happened only with older GTK+3 releases.

SBo project is also kicking in 2017. Based on some statistics, we had more than 9600 commits alone this year coming from more than 300 contributors and a total of 6868 scripts for 14.2 repository. We also had a new machine replacing the old server which was coming from donations from our users and sponsors. The new servers is way more powerful than the previous one and it enables us to serve users with more resources with better infrastructure.

sbopkg is still alive and there's some new features included in the master branch already which should make sqg LOT faster, thanks to Marcel Saegebarth for his contributions. You will need to install parallel to get the best of sqg in the next release. Basically it allows you to maximize your machine's CPUs to generate all the queue files. On my new Ryzen machine which has 6 (+6) cores, i test it using time sqg -a -j 24 and i can complete the whole process in 67 seconds.

We are now looking forward toward 2018 and hoping that it could be a better year for all open source projects, especially Slackware-related projects.

by Willy Sudiarto Raharjo ( at December 31, 2017 04:30 PM

December 27, 2017


RepetierHost on Slackware


download & build libgdiplus

Creating Slackware package:  /tmp/libgdiplus-5.4-i586-1_SBo.tgz
Slackware package /tmp/libgdiplus-5.4-i586-1_SBo.tgz created.
root@x86:~# installpkg  /tmp/libgdiplus-5.4-i586-1_SBo.tgz

download & build Mono

Slackware package /tmp/mono- created.
root@x86:~# installpkg  /tmp/mono-

Download Slic3r

# wget
# tar zxvf slic3r-linux-x86-1-2-9-stable.tar.gz 
# mv Slic3r /opt/
# /opt/Slic3r/bin/slic3r

Download RepetierHost

# wget
# tar zxvf repetierHostLinux_2_0_5.tgz
# mv RepetierHost /opt/

Edit /opt/RepetierHost/repetierHost

cd /rh/linux/RepetierHost
mono RepetierHost.exe -home /rh/linux/RepetierHost&


cd /opt/RepetierHost
mono RepetierHost.exe -home /opt/RepetierHost&


# /opt/RepetierHost/repetierHost

by ozzie at December 27, 2017 04:56 AM

December 26, 2017


Build MongoDB

download Slackbuilds script (

# groupadd -g 285 mongo
# useradd -u 285 -d /var/lib/mongodb -s /bin/false -g mongo mongo

download mongodb 3.6.0

# wget

edit monogodb.Slackbuild





# ./mongodb.Slackbuild

ops error:

Compiling build/opt/mongo/scripting/mozjs/base.o
cc1plus: fatal error: js-config.h: No such file or directory
compilation terminated.
scons: *** [build/opt/mongo/scripting/mozjs/base.o] Error 1
scons: building terminated because of errors.
build/opt/mongo/scripting/mozjs/base.o failed: Error 1

copy header js-config.h

#  cp /tmp/SBo/mongodb-src-r3.6.0/src/third_party/mozjs-45/platform/
x86_64/linux/include/js-config.h /usr/include/


# ./mongodb.Slackbuild

edit /etc/rc.d/rc.local

if [ -x /etc/rc.d/rc.mongodb ]; then
    /etc/rc.d/rc.mongodb start

by ozzie at December 26, 2017 06:18 AM

December 22, 2017


slackware-14.2 yubikey Validation

Download Source

root@badak2:~# git clone
Cloning into 'yubikey-val'...
remote: Counting objects: 3150, done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 3150 (delta 0), reused 1 (delta 0), pack-reused 3147
Receiving objects: 100% (3150/3150), 766.74 KiB | 216.00 KiB/s, done.
Resolving deltas: 100% (1940/1940), done.
Checking connectivity... done.

edit Makefile

root@badak2:~# cd yubikey-val/
root@badak2:~/yubikey-val# vi Makefile


wwwgroup = www-data
wwwprefix = /var/www/wsapi


wwwgroup = apache
wwwprefix = /var/www/htdocs/wsapi


root@badak2:~/yubikey-val# make install
install -D --mode 644 ykval-verify.php /usr/share/yubikey-val/ykval-verify.php
install -D --mode 644 ykval-common.php /usr/share/yubikey-val/ykval-common.php
install -D --mode 644 ykval-synclib.php /usr/share/yubikey-val/ykval-synclib.php
install -D --mode 644 ykval-sync.php /usr/share/yubikey-val/ykval-sync.php
install -D --mode 644 ykval-resync.php /usr/share/yubikey-val/ykval-resync.php
install -D --mode 644 ykval-db.php /usr/share/yubikey-val/ykval-db.php
install -D --mode 644 ykval-db-pdo.php /usr/share/yubikey-val/ykval-db-pdo.php
install -D --mode 644 ykval-db-oci.php /usr/share/yubikey-val/ykval-db-oci.php
install -D --mode 644 ykval-log.php /usr/share/yubikey-val/ykval-log.php
install -D --mode 644 ykval-log-verify.php /usr/share/yubikey-val/ykval-log-verify.php
install -D ykval-queue /usr/sbin/ykval-queue
install -D ykval-synchronize /usr/sbin/ykval-synchronize
install -D ykval-export /usr/sbin/ykval-export
install -D ykval-import /usr/sbin/ykval-import
install -D ykval-gen-clients /usr/sbin/ykval-gen-clients
install -D ykval-export-clients /usr/sbin/ykval-export-clients
install -D ykval-import-clients /usr/sbin/ykval-import-clients
install -D ykval-checksum-clients /usr/sbin/ykval-checksum-clients
install -D ykval-checksum-deactivated /usr/sbin/ykval-checksum-deactivated
install -D ykval-nagios-queuelength.php /usr/sbin/ykval-nagios-queuelength
install -D ykval-queue.1 /usr/share/man/man1/ykval-queue.1
install -D ykval-synchronize.1 /usr/share/man/man1/ykval-synchronize.1
install -D ykval-import.1 /usr/share/man/man1/ykval-import.1
install -D ykval-export.1 /usr/share/man/man1/ykval-export.1
install -D ykval-gen-clients.1 /usr/share/man/man1/ykval-gen-clients.1
install -D ykval-import-clients.1 /usr/share/man/man1/ykval-import-clients.1
install -D ykval-export-clients.1 /usr/share/man/man1/ykval-export-clients.1
install -D ykval-checksum-clients.1 /usr/share/man/man1/ykval-checksum-clients.1
install -D ykval-checksum-deactivated.1 /usr/share/man/man1/ykval-checksum-deactivated.1
install -D ykval-munin-ksmlatency.php /usr/share/munin/plugins/ykval_ksmlatency
install -D ykval-munin-vallatency.php /usr/share/munin/plugins/ykval_vallatency
install -D ykval-munin-queuelength.php /usr/share/munin/plugins/ykval_queuelength
install -D /usr/share/munin/plugins/ykval_responses
install -D /usr/share/munin/plugins/ykval_ksmresponses
install -D ykval-munin-yubikeystats.php /usr/share/munin/plugins/ykval_yubikeystats
install -D --backup --mode 640 --group apache ykval-config.php /etc/yubico/val/ykval-config.php
install -D --mode 644 ykval-db.sql /usr/share/doc/yubikey-val/ykval-db.sql
install -D --mode 644 /usr/share/doc/yubikey-val/
install -D --mode 644 doc/Generating_Clients.adoc doc/Getting_Started_Writing_Clients.adoc 
doc/Import_Export_Data.adoc doc/Installation.adoc doc/Make_Release.adoc doc/Munin_Probes.adoc 
doc/Revocation_Service.adoc doc/Server_Replication_Protocol.adoc doc/Sync_Monitor.adoc 
doc/Troubleshooting.adoc doc/Validation_Protocol_V2.0.adoc doc/Validation_Server_Algorithm.adoc 
doc/YubiKey_Info_Format.adoc /usr/share/doc/yubikey-val/

Setup & Import MySQL

root@badak2:~/yubikey-val# mysql_install_db --user=mysql
Installing MariaDB/MySQL system tables in '/var/lib/mysql' ...
171222  0:38:39 [Note] /usr/libexec/mysqld (mysqld 10.0.26-MariaDB) starting as process 1116 ...
171222  0:38:39 [Note] InnoDB: Using mutexes to ref count buffer pool pages
171222  0:38:39 [Note] InnoDB: The InnoDB memory heap is disabled
171222  0:38:39 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
root@badak2:~/yubikey-val# chmod  +x /etc/rc.d/rc.mysqld
root@badak2:~/yubikey-val# /etc/rc.d/rc.mysqld  start
root@badak2:~/yubikey-val# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 4
Server version: 10.0.26-MariaDB MariaDB Server
Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> create database ykval;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> \q
root@badak2:~/yubikey-val# mysql -u root -p ykval < /usr/share/doc/yubikey-val/ykval-db.sql
Enter password:

SETUP OTP interface

root@badak2:~/yubikey-val# make symlink
install -d /var/www/htdocs/wsapi/2.0
ln -sf /usr/share/yubikey-val/ykval-verify.php /var/www/htdocs/wsapi/2.0/verify.php
ln -sf /usr/share/yubikey-val/ykval-sync.php /var/www/htdocs/wsapi/2.0/sync.php
ln -sf /usr/share/yubikey-val/ykval-resync.php /var/www/htdocs/wsapi/2.0/resync.php
ln -sf 2.0/verify.php /var/www/htdocs/wsapi/verify.php

add to php.ini

include_path ".:/etc/yubico/val:/usr/share/yubikey-val"

enable httpd, php, PDO

root@badak2:~/yubikey-val# chmod  +x /etc/rc.d/rc.httpd
root@badak2:~/yubikey-val# /etc/rc.d/rc.httpd start

configure .htaccess

RewriteEngine on
RewriteRule ^([^/\.\?]+)(\?.*)?$ $1.php$2 [L]


root@badak2:~#  wget -q -O - 'http://localhost/wsapi/2.0/verify

by ozzie at December 22, 2017 12:26 AM

December 21, 2017


slackware-14.2 yubikey Key-Storage-Module

Slackware Linux
Apache, PHP, MySQL, OpenPGP

Download source

root@badak1:~# git clone
Cloning into 'yubikey-ksm'...
remote: Counting objects: 681, done.
remote: Total 681 (delta 0), reused 0 (delta 0), pack-reused 681
Receiving objects: 100% (681/681), 133.22 KiB | 154.00 KiB/s, done.
Resolving deltas: 100% (398/398), done.
Checking connectivity... done.

edit Makefile

root@badak1:~# cd yubikey-ksm/
root@badak1:~/yubikey-ksm# vi Makefile


wwwgroup = www-data
wwwprefix = /var/www/wsapi


wwwgroup = apache
wwwprefix = /var/www/htdocs/wsapi

Build & Install

root@badak1:~/yubikey-ksm# make install
install -D --mode 640 .htaccess /usr/share/yubikey-ksm/.htaccess
install -D --mode 640 ykksm-decrypt.php /usr/share/yubikey-ksm/ykksm-decrypt.php
install -D --mode 640 ykksm-utils.php /usr/share/yubikey-ksm/ykksm-utils.php
install -D ykksm-gen-keys /usr/bin/ykksm-gen-keys
install -D ykksm-import /usr/bin/ykksm-import
install -D ykksm-export /usr/bin/ykksm-export
install -D ykksm-checksum /usr/bin/ykksm-checksum
install -D --backup --mode 640 --group apache ykksm-config.php /etc/yubico/ksm/ykksm-config.php
install -D ykksm-gen-keys.1 /usr/share/man/man1/ykksm-gen-keys.1
install -D ykksm-import.1 /usr/share/man/man1/ykksm-import.1
install -D ykksm-export.1 /usr/share/man/man1/ykksm-export.1
install -D ykksm-checksum.1 /usr/share/man/man1/ykksm-checksum.1
install -D ykksm-db.sql /usr/share/doc/yubikey-ksm/ykksm-db.sql
install -D Makefile /usr/share/doc/yubikey-ksm/
install -D doc/Decryption_Protocol.adoc doc/Design_Goals.adoc doc/Generate_Keys.adoc 
doc/Generate_KSM_Key.adoc doc/Import_Keys_To_KSM.adoc doc/Installation.adoc 
doc/Key_Provisioning_Format.adoc doc/Server_Hardening.adoc doc/Sync_Monitor.adoc 

Configure & Import MySQL

root@badak1:~# mysql_install_db --user=mysql
root@badak1:~# chmod 755 /etc/rc.d/rc.mysqld
root@badak1:~# /etc/rc.d/rc.mysqld  start
root@badak1:~# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 10.0.26-MariaDB MariaDB Server
Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> create database ykksm;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> \q
root@badak1:~# mysql -u root -p ykksm < /usr/share/doc/yubikey-ksm/ykksm-db.sql

Edit php.ini

include_path = "/etc/yubico/ksm:/usr/share/yubikey-ksm"

Install OTP

root@badak1:~/yubikey-ksm# make -f /usr/share/doc/yubikey-ksm/ symlink
install -d /var/www/htdocs/wsapi
ln -sf /usr/share/yubikey-ksm/.htaccess /var/www/htdocs/wsapi/.htaccess
ln -sf /usr/share/yubikey-ksm/ykksm-decrypt.php /var/www/htdocs/wsapi/decrypt.php

Generate KSM Key

root@badak1:~# gpg --gen-key
gpg (GnuPG) 1.4.20; Copyright (C) 2015 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
gpg: directory `/root/.gnupg' created
gpg: new configuration file `/root/.gnupg/gpg.conf' created
gpg: WARNING: options in `/root/.gnupg/gpg.conf' are not yet active during this run
gpg: keyring `/root/.gnupg/secring.gpg' created
gpg: keyring `/root/.gnupg/pubring.gpg' created
Please select what kind of key you want:
   (1) RSA and RSA (default)
   (2) DSA and Elgamal
   (3) DSA (sign only)
   (4) RSA (sign only)
Your selection? 1
RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048)
Requested keysize is 2048 bits
Please specify how long the key should be valid.
         0 = key does not expire
      <n>  = key expires in n days
      <n>w = key expires in n weeks
      <n>m = key expires in n months
      <n>y = key expires in n years
Key is valid for? (0)
Key does not expire at all
Is this correct? (y/N) Y
You need a user ID to identify your key; the software constructs the user ID
from the Real Name, Comment and Email Address in this form:
    "Heinrich Heine (Der Dichter) <>"
Real name: ozzienich
Email address:
Comment: --
You selected this USER-ID:
    "ozzienich (--) <>"
Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
You need a Passphrase to protect your secret key.
gpg: /root/.gnupg/trustdb.gpg: trustdb created
gpg: key 654FBFAC marked as ultimately trusted
public and secret key created and signed.
gpg: checking the trustdb
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
pub   2048R/654FBFAC 2017-12-21
      Key fingerprint = 573F 524E 5A53 C893 87E4  AA47 5D00 059F 654F BFAC
uid                  ozzienich (--) <>
sub   2048R/EA96F715 2017-12-21
root@badak1:~# gpg --list-key
pub   2048R/654FBFAC 2017-12-21
uid                  ozzienich (--) <>
sub   2048R/EA96F715 2017-12-21

Generate Keys

root@badak1:~# ykksm-gen-keys --urandom 1 10 | gpg -a --encrypt -r 654FBFAC  -s > keys.txt
You need a passphrase to unlock the secret key for
user: "ozzienich (--) <>"
2048-bit RSA key, ID 654FBFAC, created 2017-12-21
root@badak1:~# gpg < keys.txt
You need a passphrase to unlock the secret key for
user: "ozzienich (--) <>"
2048-bit RSA key, ID EA96F715, created 2017-12-21 (main key ID 654FBFAC)
gpg: encrypted with 2048-bit RSA key, ID EA96F715, created 2017-12-21
      "ozzienich (--) <>"
# ykksm 1
# serialnr,identity,internaluid,aeskey,lockpw,created,accessed[,progflags]
# the end
gpg: Signature made Thu 21 Dec 2017 03:38:02 PM WIB using RSA key ID 654FBFAC
gpg: Good signature from "ozzienich (--) <>"

Import Keys To Yubikey KSM

root@badak1:~# ykksm-import --verbose --database 'DBI:mysql:dbname=ykksm;host=localhost' --db-user XXXX --db-passwd XXXX < ~/keys.txt
You need a passphrase to unlock the secret key for
user: "ozzienich (--) <>"
2048-bit RSA key, ID EA96F715, created 2017-12-21 (main key ID 654FBFAC)
Verification output:
[GNUPG:] ENC_TO F13DAD25EA96F715 1 0
[GNUPG:] USERID_HINT F13DAD25EA96F715 ozzienich (--) <>
gpg: encrypted with 2048-bit RSA key, ID EA96F715, created 2017-12-21
      "ozzienich (--) <>"
[GNUPG:] PLAINTEXT 62 1513845482
gpg: Signature made Thu 21 Dec 2017 03:38:02 PM WIB using RSA key ID 654FBFAC
[GNUPG:] SIG_ID tYngCEEO/FWR5YCuKihwjTajxo0 2017-12-21 1513845482
[GNUPG:] GOODSIG 5D00059F654FBFAC ozzienich (--) <>
gpg: Good signature from "ozzienich (--) <>"
[GNUPG:] VALIDSIG 573F524E5A53C89387E4AA475D00059F654FBFAC 2017-12-21 1513845482 0 4 0 1 8 00 573F524E5A53C89387E4AA475D00059F654FBFAC
encrypted to: F13DAD25EA96F715
signed by: 654FBFAC
You need a passphrase to unlock the secret key for
user: "ozzienich (--) <>"
2048-bit RSA key, ID EA96F715, created 2017-12-21 (main key ID 654FBFAC)
line: 1,cccccccccccb,8f571fa25058,fb97d03b7126d1cde2437a9dedac3f28,581a6c4ed37e,2017-12-21T15:38:02,
        serialnr 1 publicname cccccccccccb internalname 8f571fa25058 aeskey fb97d03b7126d1cde2437a9dedac3f28 
lockcode 581a6c4ed37e created 2017-12-21T15:38:02 accessed  eol
line: 2,cccccccccccd,5b77a49decb3,0f6d2512cd851fecf62ac563ed6a8a28,2494828d32a8,2017-12-21T15:38:02,
        serialnr 2 publicname cccccccccccd internalname 5b77a49decb3 aeskey 0f6d2512cd851fecf62ac563ed6a8a28 
lockcode 2494828d32a8 created 2017-12-21T15:38:02 accessed  eol
line: 3,ccccccccccce,5fb827ac0f57,09857027dd82a0ac835701cd54fe4b7d,c18b216cfa9c,2017-12-21T15:38:02,
        serialnr 3 publicname ccccccccccce internalname 5fb827ac0f57 aeskey 09857027dd82a0ac835701cd54fe4b7d 
lockcode c18b216cfa9c created 2017-12-21T15:38:02 accessed  eol
line: 4,cccccccccccf,33fb7d3c6875,fdf7bdc7af6f84fece2d8d3e36e2da37,dc7191563906,2017-12-21T15:38:02,
        serialnr 4 publicname cccccccccccf internalname 33fb7d3c6875 aeskey fdf7bdc7af6f84fece2d8d3e36e2da37 
lockcode dc7191563906 created 2017-12-21T15:38:02 accessed  eol
line: 5,cccccccccccg,df3e9f911fbe,455acd1d2ce2297964dd003af33651f4,f0ef56b46c92,2017-12-21T15:38:02,
        serialnr 5 publicname cccccccccccg internalname df3e9f911fbe aeskey 455acd1d2ce2297964dd003af33651f4 
lockcode f0ef56b46c92 created 2017-12-21T15:38:02 accessed  eol
line: 6,ccccccccccch,2c525fc6fbd6,6412532c160cb7a66c69d79372d84115,da95b9e2b6ce,2017-12-21T15:38:02,
        serialnr 6 publicname ccccccccccch internalname 2c525fc6fbd6 aeskey 6412532c160cb7a66c69d79372d84115 
lockcode da95b9e2b6ce created 2017-12-21T15:38:02 accessed  eol
line: 7,ccccccccccci,acfab204f600,aea86d571d39224d9eadc7c1a323b5f2,22d8ddbee8e2,2017-12-21T15:38:02,
        serialnr 7 publicname ccccccccccci internalname acfab204f600 aeskey aea86d571d39224d9eadc7c1a323b5f2 
lockcode 22d8ddbee8e2 created 2017-12-21T15:38:02 accessed  eol
line: 8,cccccccccccj,bd602f2c5a0b,1407a47e262a4d5e42d2c9dd0529a95f,f351df3fea41,2017-12-21T15:38:02,
        serialnr 8 publicname cccccccccccj internalname bd602f2c5a0b aeskey 1407a47e262a4d5e42d2c9dd0529a95f 
lockcode f351df3fea41 created 2017-12-21T15:38:02 accessed  eol
line: 9,ccccccccccck,9f674f8d73f2,f27505d5deda0c4dc33764e7bf009afa,537c32f72293,2017-12-21T15:38:02,
        serialnr 9 publicname ccccccccccck internalname 9f674f8d73f2 aeskey f27505d5deda0c4dc33764e7bf009afa 
lockcode 537c32f72293 created 2017-12-21T15:38:02 accessed  eol
line: 10,cccccccccccl,ae986cf8f6d6,84cc170bc1c9e4c9381a6cca46140bac,75aeb77c0c20,2017-12-21T15:38:02,
        serialnr 10 publicname cccccccccccl internalname ae986cf8f6d6 aeskey 84cc170bc1c9e4c9381a6cca46140bac 
lockcode 75aeb77c0c20 created 2017-12-21T15:38:02 accessed  eol

by ozzie at December 21, 2017 03:13 PM

December 08, 2017

Willy Sudiarto Raharjo

New Desktop Machine

Last week, i decided to buy a new desktop machine for my home as my old desktop is now getting rusty and it's hard to keep up with all the requirements i need. Also it's a good time to switch to x86_64 architecture as my old desktop has been staying at x86 for a long time. I always follow -current development, so i never upgraded my system since the first time i install Slackware on that machine (i believe it was Slackware 13.0). It has been serving me over a great 8 years since 2009 looking from the result of this command:
tune2fs -l /dev/sda8 | grep created
Filesystem created:       Tue Oct  6 03:29:23 2009

So i decided to buy a non-branded PC, but rather i built one myself so i get to pick which parts i'm going to use and finally i decided to take this part:
I actually didn't plan to buy NVidia GTX, but i didn't realized that Ryzen didn't come up with GPU just like Intel and the motherboard doesn't provide one either, so i ended up with another NVidia product which is the moderate level product since i'm not a gamer. I was also surprised to see that Ryzen 1600x doesn't come up with a heat sink so i had to buy a heat sink for it. Hyper 212 LED is a good product and now the temperature is less than 25 C.

The installation of Windows 10 went smooth and i quickly upgrade it to latest Fall Creator update (build 1709) in no time alongside with installation of other applications that i need in Windows environment. I also had time to update my BIOS to the latest version with the utility provided by the vendor. Since i was able to work with UEFI on my laptop, i decided to try again on my new machine and it seems to be a bad decision as i had trouble with it when installing Slackware.

For Slackware installation, i tried to use the -current snapshot per December 4 which already reverted back to Linux Kernel 4.9.66, but i had an infinite loop of IRQ handle messages during initial boot that prevents me to go further. Next i tried to boot using Slackware 14.2 DVD which surprisingly work well so i ended up installing Slackware 14.2 x86_64 before i switched to Slackware64 Current using a local repository i had on my old desktop. I had another issue during boot loader selection as it didn't install elilo even though i have /boot/efi partition detected so i decided to use grub just like what i did with my laptop but i left out Windows since it wasn't detected. When i rebooted, it ended with the same failure as the initial installation. It turns out that Linux Kernel 4.9.x didn't play nice with my Ryzen, so i tried to boot again with my Slackware DVD and this time, i chroot into my root partition and upgrade the kernel to use the latest 4.14.x kernel from testing/. Surprisingly, it worked fine (there's a kernel oops at the beginning about AMD GPIO handler, but it worked fine after that) so i ended up using Linux Kernel 4.14.x for my desktop. I also installed latest NVidia driver and it is working out of the box with 4.14.x.

I started to configure my Slackware so that it can be used just like my previous desktop configuration and so far it is working great. I didn't install too many applications yet on this new system as -current is really a moving target and things changed in fast pace (the icu4c, poppler, and ical upgrade are good example how it can break many things easily). I still need to fix those things on my old desktop (it's compiling Qt5 at this time)

In the end, i still got some issues to solve:
- GRUB is using a low resolution.
  I tried to modify the values in /etc/default/grub, but still it won't work well. vbeinfo doesn't give me a recommended values that i can use. I can live with it though, since GRUB is only displayed like for 10s max before it boots to Linux.

- GRUB is not detecting Windows Boot Manager
  I can still boot to Windows by pressing F12 to boot to Windows Boot Manager directly, but i would rather see the Windows option on GRUB instead of pressing F12 during initial boot.

- Configuring for VGA Switch
  At this moment, i'm working with 2 machines but with 1 monitor. I already ordered a VGA switch to solve this issue, and it's still on delivery. Hopefully i can fix this issue by this week so i don't have to switch cables anymore.

It seems my motherboard has a bug which is reported here. This prevents me to boot properly under 4.9.x and i have to upgrade to 4.14.x in order to boot.

by Willy Sudiarto Raharjo ( at December 08, 2017 06:43 AM

December 05, 2017

Willy Sudiarto Raharjo

Reverting Back to 4.9.66

Few days ago Patrick decided to revert back to 4.9.x and i think that's a wise decision since 4.14.x has been considered unstable for some people, mostly those who are in x86 architecture. I have been using it since 4.14.x gets included and it has been pretty stable for me with watchdog disabled, but today i got system freeze for 3 times and i was unable to work with my desktop, so on the next reboot i decided to revert back to 4.9.x and so far, it's working well again.

Honestly i was quite excited when 4.14.x entered -current earlier since it's considered LTS and having it early means that it could get more testing. It did got what it was intended for (public testing), but not the results i expected. Hopefully this issue can be solved as soon as possible.

by Willy Sudiarto Raharjo ( at December 05, 2017 03:11 PM

November 17, 2017

Willy Sudiarto Raharjo

Kernel 4.14 and Watchdog Module

I got early bitten by Linux Kernel 4.14 on my desktop at home. As soon as i reboot, the kernel message log filling up the screen and then it stopped at a typical kernel panic message, but then it continues and then stopped again and it repets over time. I had a chance to take a screenshot using my phone and i saw a glimpse that it's related to watchdog module.

Lucky me that i saved the previous kernel version just in case something like this happened and it saved me. I simply reboot to the old kernel and create a new file /etc/sysctl.d/50-watchdog.conf with this single entry: kernel.nmi_watchdog=0. After that, i rebooted again and this time, it boots properly.

If you happened to have the same problem as i did, just try the above method and see if it works on your system.

I managed to found a patch for legacy NVidia driver 304.137 that should work on Linux Kernel 4.14 and i will push it into my SlackHacks soon.

So far, everything works with latest -current update here. Can't wait to get wet with Slackware Linux 15.0!!!

by Willy Sudiarto Raharjo ( at November 17, 2017 10:43 AM

Slackware ditch Sendmail for Postfix

After a long two weeks without any changes, finally a new update happening in -Current tree where all the excitement comes reality and this batch is no exception. We have some plenty new interesting changes, including:
  • Kernel upgraded to latest LTS release: 4.14.x
  • Sendmail is now moved to extra, replaced by Postfix as the default MTA
  • Several utility were split into different packages and removed from util-linux
  • Latest GTK2/3 stack
  • New mozilla-nss 3.34
  • NetworkManager 1.10
  • Dovecot will be the new default IMAP daemon replacing imapd
  • libmilter is now added along with hostname package
  • Networking script will utilise ip instead of ifconfig and route
  • Mozilla Firefox 57 (Quantum) is here
  • mesa 17.2.5 + libdrm 2.4.88
This will make the next Slackware release a big change from previous release and as always, it's going to be rock solid!!

by Willy Sudiarto Raharjo ( at November 17, 2017 07:49 AM

November 05, 2017

Willy Sudiarto Raharjo

Desktop Lock Issue in Cinnamon

Philip van der Hoeven informed me that cinnamon-screensaver does not lock the desktop in 14.2. After confirming on a VM, it turned out to be true and it seems that i missed some packages during 3.2 -> 3.4 migration few months ago. There wasn't any mentioning in the ChangeLog that it would require python-xapp and psutil, so i didn't build those two. Unfortunately those two are needed to lock the desktop properly, so i have added those two in both 14.2 and current tree as well as in the repository (master and 14.2 branch).

Please make sure to install those two new packages to get the desktop locking enabled again. If you have psutil from SBo, you might want to upgrade it as well since the one in CSB is built against Python 2 and 3 while the one in SBo is built against Python 2 by default (You need to add PYTHON3=yes before running the script to build Python 3 bindings).

by Willy Sudiarto Raharjo ( at November 05, 2017 05:18 PM

October 25, 2017

Willy Sudiarto Raharjo

Early Cinnamon 3.6 Packages for Slackware-Current

It's been a while since i posted news about Cinnamon development and this is the perfect time to share the news that Cinnamon 3.6 is now tagged in the GitHub repository since yesterday and all of the Cinnamon components are tagged as well. There are no official announcement yet, since the developers are still fine-tuning the released tarball for unpredicted surprise (i got one yesterday) that will lead to minor releases in the next few days/weeks.

In the meantime, you can already enjoy Cinnamon 3.6 by downloading binary packages which i built this morning and it has been uploaded the usual repository (only for x86_64) generously provided by Darren Tadgy. It's all built against the latest Slackware-Current update, so please make sure that you are running -current before installing/upgrading to the latest Cinnamon.

All the changes has been pushed to the master branch as well in GitHub so you can also compile it on your own if you prefer to do so. As always, let me know if you found some build issue regarding to Cinnamon SlackBuilds or if you have any feedback while using this work.

by Willy Sudiarto Raharjo ( at October 25, 2017 02:12 AM

October 16, 2017

Latif Anshori Kurniawan

XFCE, Slackware

Menyenangkan sekali mendapati Igor Ljubuncic (narablog di balik Dedoimedo, salah satu blog populer yang jamak mengulas distribusi Linux dan open-source) mewawancarai Sean Michael Davis. Sean adalah salah satu pengembang inti XFCE.

Sebagaimana jamak diketahui bahwa XFCE merupakan salah satu lingkungan desktop populer, selain KDE, GNOME, MATE, Cinnamon, dan lainnya. Menarik untuk disimak, terlepas dari Sean lebih jamak berkecimpung pada proyek Xubuntu, tetapi semangat dan kepeduliannya pada proyek XFCE amat besar.

Teringat beberapa tahun sebelumnya, ketika menggunakan Slackware, di samping KDE, saya jamak ber-XFCE. XFCE di Slackware amat ringan, stabil, dan robust. Nyaris tiada kendala apapun di komputer tua kami masa-masa itu.

Kekinian, jamak ber-MATE di Slackware. Rasanya, antara MATE dan XFCE, tidak dapat dikomparasikan, saya menyukai keduanya, kagum dengan kesederhanaan yang diusung keduanya. Belum bila distribusi Linux yang digunakan adalah Slackware, lengkap sudah kesederhanaannya.

Saya pribadi cenderung ber-DE tunggal di Slackware, tidak membenturkan banyak hal. Kalau ber-MATE, barangkali fokus pada aplikasi bukan berbasis Qt. Kalau di KDE, barangkali mencukupkan diri dengan pelbagai rupa aplikasi bawaan KDE atau berbasis Qt. Begitu pula bila ber-XFCE. Apalagi, dominan kebutuhan saya sekadar berbatas pada keperluan perkantoran semacam menulis/mengetik, bukan developing atau programming.

Apabila dirasa kurang praktis bila harus bersih-bersih banyak hal agar hanya XFCE yang berjalan di atas Slackware kesayangan, Anda dapat mencoba beberapa versi Live. Atau, dapat pula mencoba turunan (derivative) populer Slackware, selaik Zenwalk, Salix, dan lainnya.

Terutama selaik yang disebut, yaitu Zenwalk dan Salix, keduanya masih aktif didukung oleh para pengembang intinya. Anda pun dapat menjapri secara personal beberapa developer terkait melalui, salah satunya, grup pencinta Slackware di Facebook. Sila sambung wicara dengan elok.

Grup Slackware tersebut merupakan grup Facebook global (nonbahasa Indonesia). Apabila ingin menanyakan sesuatu, sila saja disampaikan, dimungkinkan akan ada yang merespons–insyaallah. Dapat pula mengunjungi forum Linux Questions, di sana jamak permasalahan Slackware telah teratasi (solved). Atau, sila bergabung dengan grup pesan instan Telegram dari Komunitas Slackware Indonesia, yakni SlackwareID. Sila bergabung, dan temukanlah serbaneka keceriaan di sana.

Mengapa Slackware? Mengapa XFCE?
Dua pertanyaan ini acap menghampiri saya, terutam dari mahasiswa yang menanyakan mengapa mereka perlu berkenalan dengan Slackware. Tidak banyak hal saya sampaikan, kecuali meminta mereka untuk mencoba Slackware terlebih dahulu dan membaca-baca dokumentasinya yang tersedia bebas di internet.

Hal yang paling pokok, yang saya tekankan, adalah benefit yang mereka peroleh ketika menggunakan Slackware. Serbaneka ‘masalah’ pasti akan menghampiri, dan di situlah tantangannya. Dari tantangan yang harus dihadapi, setidaknya mereka belajar banyak hal, salah satunya adalah perihal problem solving dan kemandirian.

Ada pula di antaranya mengklarifikasi mengapa perlu mencoba DE yang, menurut mereka, tidak banyak digunakan. Hanya belum tahu saja barangkali bila Slackware mendukung banyak rupa DE yang ada. Namun, entah mengapa jamak paradigma sebagian mahasiswa masih mengharuskan diri kalau menggunakan Linux mesti dengan lingkungan desktop GNOME atau KDE ketimbang yang lain. Tidak ada yang mengharuskan, tidak masalah bila bereksplorasi dengan DE-DE yang lain. Tidak populer bukan berarti tiada yang support, bukan?

Mau menyerah setelah ber-Slackware dan memutuskan kembali ke distro Linux yang lebih populer? Atau, bahkan ingin menggunakan Windows saja lantaran tidak ribet dan tampilan antarmukanya lebih menarik? Hidup ini penuh pilihan. “Selamat bagi Anda yang masih bertahan bersama Slackware!”

by Latif Anshori Kurniawan at October 16, 2017 06:00 AM

October 14, 2017


Virtual Environtment

Perkembangan perangkat bahasa pemrograman semakin cepat dan bervariasi. Namun pengembang banyak yang masih bertahan di versi ‘jadul’, terutama untuk perangkat di mesin-mesin produksi, dan tampak enggan beranjak karena menjaga stabilitas layanan.

Di sisi lain pengembang bahasa pemrograman terus memperbaiki fitur dan kutu yang tentunya membuat semakin baik lagi. Coba saja ikuti versi setiap bahasa pemrograman.

Apa yang bisa kita lakukan?

Sebagai bagian dari pengembangan, tentunya ada sisi lain yang perlu dilakukan selain menulis baris kode, yaitu riset. Percobaan-percobaan yang perlu dilakukan untuk melihat berbagai kemungkinan penerapan di luar platform yang digunakan maupun penerapan pada platform yang lebih baru.

Mengetahui platform lain perlu sebagai perbandingan atau benchmark akan kondisi teknologi yang digunakan saat ini. Karena pada hakekatnya perkembangan teknologi itu berjalan beriringan namun penerapan bergantung dari fokus pengembang platform. Pengguna tentunya sangat diuntungkan dengan adanya banyak pengembangan yang arahnya sama.

Platform yang lebih baru tentunya memiliki fitur yang lebih, baik dari segi kualitas kode maupun keamanan. Kondisi ini mewajibkan tim riset untuk mencoba mengubah kode seiring dengan naiknya versi platform yang digunakan. Tak melakukannya akan membuat beberapa masalah dikemudian hari. Mau mencoba?

Lingkungan Virtual

Lingkungan Virtual atau Virtual Environtment merupakan sebuah media, sarana percobaan, memasuki lingkungan pengembangan yang baru. Beberapa platform, bahasa pemrograman, sudah memiliki sarana ini. Hal ini memudahkan periset untuk menjalankan tugasnya.

Beberapa bahasa pemrograman yang memiliki sarana ini akan coba dibahas.

Perlbrew untuk Perl

Untuk platform Perl,  silakan coba Perlbrew. Ada 2 cara dalam melakukan pemasangan, dengan CPAN atau manual, namun rekomendasi tentunya menggunakan cara aman, yaitu CPAN.

Melakukan instalasi dengan CPAN sangat mudah cukup jalankan “cpan App::perlbrew” untuk memasang, dan jalankan “perlbrew init” untuk mulai menggunakannya.

Pyenv untuk Python

Jika anda pengguna Python, silakan pasang Pyenv. Untuk pemasangannya silakan clone proyek ke .pyenv di home dengan perintah “git clone ~/.pyenv“.

Setelah semua selesai silakan ubah variabel PYENV_ROOT ke folder tadi ($HOME/.pyenv). Dan tambahkan $HOME/.pyenv/bin ke dalam $PATH. Dan terakhir, jalankan “pyenv init -“. Untuk otomasi silakan edit berkas .bashrc atau .bash_profile Anda.

 Sebenarnya pyenv ini merupakan hasil fork rbenv yang akan dijelaskan kemudian.

Rbenv untuk Ruby

Terakhir kita akan membahas platform Ruby dengan rbenv. Pada dasarnya pemasangan sama dengan pyenv mengingat ini adalah proyek induk. Namun dalam hal pemasangan versi tambahan, membutuhkan pengaya lagi, yaitu ruby-build, dimana  pyenv yang sudah memasukkannya secara built-in. Untuk pemasangan ikuti saja perintahnya di sini, yang pada dasarnya sama dengan pyenv.

Pemasangan paket tambahan dengan memasukkan ruby-build dengan menjalankan perintah berikut:

> mkdir -p “$(rbenv root)”/plugins
> git clone “$(rbenv root)”/plugins/ruby-build

Dan nikmati kemudahannya.


Platform itu adalah pilihan. Layaknya seorang laki-laki yang memilih istri untuk menjadi ibu bagi anak-anaknya. Jadi, silakan pilih dengan seksama dengan siapa Anda akan menikah. Eh, kog jadi ngelantur. 😀

Tapi memang itulah yang sebenarnya, Anda perlu tahu banyak sebagai pertimbangan dalam menentukan platform yang akan Anda gunakan. Bukan untuk menyindir yang suka “gonta-ganti” platform, tapi sebaiknya platform yang digunakan dapat diadopsi dalam waktu hampir tak terbatas untuk menjaga tersedianya layanan. Sekali lagi itu adalah pilihan.

Dan kenapa saya tidak menulis panjang lebar mengenai bagaimana penggunaannya? Hai, pembaca. Apakah Anda yang membaca ini ingin melakukan riset atau hanya membaca? Poin penting periset adalah membaca dan mencoba menerapkan, bila satu poin gagal ya…

Jangan malas membaca, ya. Dokumentasi lengkap kog.

Dan sekali lagi. Ini adalah pilihan. Buru-burulah memilih, sebelum diambil orang. #eh

by yht at October 14, 2017 06:23 PM

October 06, 2017

Willy Sudiarto Raharjo

Perl 5.26.x Included in -Current

Next Slackware release will jump from perl 5.22 to 5.26, which is a big improvements. You can see the changes in perl 5.24 delta and perl 5.26 delta. One of the big changes is considered a security improvements, but as always, security changes means there wil be some changes need (ie. it breaks things). It's the removal of "." in @INC. It was a very convenience feature, but also it posses some security risk if not used properly, so upstream decided to remove it by default, BUT they provided solutions for those affected.

As we are preparing for the next development cycle while monitoring the changes in -current, Matteo Bernardini had made a note on his blog about these changes. If you are running -current and some of your scripts broke after the latest update, you can try his solutions to rebuild all Perl scripts with the solution.

Besides Perl update, we also have other updates, such as kernels, vte, curl, libinput, xorg-server, p11-kit, vim/gvim, gtk3, openjpeg, imagemagick, librsvg, libmtp, ntp, cmake, python3, cups-filters, and ghostscript.

Since Perl update is also on my wishlist, it's now down to 3 left, KDE 5, PHP 7.1, and OpenSSL 1.1. Hopefully they are approved for this cycle.

by Willy Sudiarto Raharjo ( at October 06, 2017 04:13 PM

September 30, 2017

Willy Sudiarto Raharjo

Welcome TexLive

TeTeX had a long run with Slackware, but it's time to say good bye as the package is severly outdated. I once got a request to edit a LaTeX document from one of my colleague and i can't build the document just because TeTeX and it suddenly worked when i switched to texlive (plus texlive-extra) from SBo. Since texlive is now part of Slackware, i just need to add texlive-extra from SBo for my need :)

I wonder if texlive-extra can be added as well. That will be a great advantage for those using latex as it adds more functionality to the base texlive package, but it comes with a huge size: 263 MB. More over, since Pat has to provide the sources and the SlackBuild itself, it would consume more space on the DVD when it's released. I'm not really sure whether a single DVD can hold up  all those sources if texlive-extra is added.

The other changes are only libpng and cups-filter upgrade.

by Willy Sudiarto Raharjo ( at September 30, 2017 12:06 AM

September 26, 2017

Willy Sudiarto Raharjo

Cinnamon and MATE Packages Rebuilt

As promised, i have pushed the latest build of Cinnamon and MATE binaries targeting for Slackware Current users to It's built against the latest Slackware Current snapshot (per Tue Sep 26 02:37:01 UTC 2017). Here's some notes on both projects:

  • All python packages support both python 2/3 bindings in the same package
  • New package: graphviz (new dependency for vala)
  • lxml upgraded to 4.0.0 (requires python3)
  • colord upgraded to 1.4.1 (requires meson)
  • json-glib upgraded to 1.4.2 (requires meson)
  • libgtop upgraded to 2.38.0
  • metacity upgraded to 3.25.2 
  • krb5 upgraded to 1.15.2
  • vala upgraded to 0.38.1 (requires graphviz)
  • python3 removed (included in Slackware)
  • pygobject3-python3 removed (included in pygobject3 in Slackware)
  • py3cairo removed (included in pycairo in Slackware)
  • dbus-python3 removed (included in dbus-python in Slackware)
  • A mix of 1.18 and 1.19 since not all 1.19 tarballs have been released
  • New package: graphviz (new dependency for vala)
  • gtksourceview3 upgraded to 3.24.4
  • libgtop upgraded to 2.38.0
  • libpeas upgraded to 1.22.0
  • libgxps upgraded to 0.3.0 (requires meson)
  • vala upgraded to 0.38.1 (requires graphviz)
  • docutils removed (included as python-docutils in Slackware)
As always, if you found any issues, please report it on GitHub (CSB and MSB)

by Willy Sudiarto Raharjo ( at September 26, 2017 09:31 PM

MATE and Cinnamon Rebuilt Plan

Since there has been some big changes in -current in the last few batches, i think it's time to test the latest snapshot against MATE and Cinnamon which intended for next Slackware releases. The addition of Python3, meson, and ninja really helped since some of the deps of both projects now requires them as mandatory requirements.

My request of libxslt also got approved and it was needed to build lxml 4.0 properly so at this moment, i'm building latest Cinnamon 3.4 packages against latest Slackware Current. Clem and other developers are still preparing for future Cinnamon 3.6 which is planned to be released by the end of this year (November/December). I hope to release the updated packages in the next few hours if everything goes smooth. Since python 3 got included, i updated some of the python packages to build python 2/3 bindings in the same package instead of splitting them into two packages.

As for MATE, i will merge 1.19-dev branch into master and this will build the latest snapshot of mixed MATE 1.18 and 1.19. Some dependencies have been bumped to the latest version as well since the libraries included in Slackware Current is sufficient to build the latest version. Some of them also migrates to meson, so it's a perfect timing to test them. MATE 1.20 is planned to be released in early 2018, so it will be targeting for next Slackware release. The minimum GTK+3 is probably raised to 3.20/3.22, so Slackware 14.2 will no longer qualified.

Just FYI, the next update of Slackware Live ISO of MATE variants will be based on a mix of MATE 1.18/1.19 built from master branch. Stay tune!!!

by Willy Sudiarto Raharjo ( at September 26, 2017 12:16 PM

Meson and Ninja Approved

This morning, Patrick has pushed three new packages for Slackware-Current, in which one of them is also part of my wishlist, meson build. This will allow future mesa and xorg to be build since they have moved on to meson build and soon they will abandon autoconf-based build. I believe many others will follow their move as meson proved to be faster than other builder. Ninja also goes in as well since it's a dependency for meson.

Another big think is the inclusion of qpdf 7.0.0, binutils 2.29.1, and poppler 0.59.0. This brings some changes in the shared library, so other packages that linked into this library will have to be rebuilt (including atril in my MSB).

by Willy Sudiarto Raharjo ( at September 26, 2017 03:03 AM

September 24, 2017

Willy Sudiarto Raharjo

Python3 Now Included in Current

Slackware has finally shipped Python3 by default in the next release after Patrick has approved the queue from Heinz along with other Python3 packages and also some rebuilt packages. You will notice that Patrick decided to unify Python 2/3 binding support into a single package instead of splitting it into python-XXX and python3-XXX. This will reduce the number of packages to support both version and it's going to be a lot easier to kill Python 2 in the future. It's also possible that SBo will follow the same directions from Slackware in  the next cycle.

Since python3 has been included, providing ninja/meson is getting easier as the main dependency has been met. Python3 is also one of the requirement for newer version of vulkan-sdk, so this batch also came with the latest version of vulkan-sdk. If you are using mailman, you can start using mailman 3 which also requires Python 3. It has tons of new features compared to 2.x.

Another big thing is boost 1.65 which is the latest boost library found upstream. Please note that this version *might* breaks some other applications so you might have to find a patch to fix those issues.

One more wishlist granted. Waiting for more :)

by Willy Sudiarto Raharjo ( at September 24, 2017 09:36 AM

September 16, 2017

Willy Sudiarto Raharjo

New Kernel Update

Patrick has just issued a new security advisory for kernel updates in stable (14.1 and 14.2) and current tree to fix BlueBorne attack which attack the bluetooth stack in the kernel space. The BlueZ package in the user space is also updated to the latest version as well. Please take some time to review this advisory and upgrade as soon as possible.

In -current tree, we got a new package promoted to core package: xorriso. From the description, GNU xorriso is a command line and dialog application, which creates, loads, manipulates, and writes ISO-9660 file system images with Rock Ridge extensions. This package has been used by AlienBOB to produce his Slackware Live ISO images and now it has been included in the core package. The latest ffmpeg, gvfs, and texinfo got included as well.

by Willy Sudiarto Raharjo ( at September 16, 2017 01:45 AM

September 11, 2017

Willy Sudiarto Raharjo

Next MATE Release

MATE 1.18 has been released in March 2017 and upstream developers are still providing patches to the latest release to fix some issues found after the release. While doing so, they also started the work toward next MATE release 1.20 (or whatever the new version will be).

They have released several 1.19 tarballs as a snapshot release for testing and so far, most of their works are removing deprecated functions found in older GTK+3 releases. Their plan was to upgrade the minimum requirement of GTK+3 for next MATE release. It's quite tiring to support 5 different GTK+3 versions (3.14, 3.16, 3.18, 3.20, and 3.22) since every major GTK+3 brings regressions toward themes. They are planning to support only 3.20 or 3.22 as modern distributions are moving forward as well. Slackware-current already uses 3.22, so there won't be any problem at all.

This brings some consequences for Slackware users as Slackware do not update GTK+3 in stable releases, meaning that MATE 1.18 will be the last version of MATE that can be installed for 14.2 (if they do bump the requirement)

I have been working on MATE 1.19 for some time and i prepared a different branch (1.19-dev) for it, while waiting to be merged in master branch someday (when all tarballs have been released). The only big difference is the new package added, which is graphviz as a new requirement for new vala 0.38.0.

Please note that once all MATE 1.19 tarballs have been generated, 1.19-dev branch will be merged into master and it will be supported for -current users only. Stable users should keep following 14.2-mate-1.18 branch for future updates.

by Willy Sudiarto Raharjo ( at September 11, 2017 02:27 AM

August 30, 2017

Willy Sudiarto Raharjo

Another Wishlist Approved

This morning i saw an update on the -current ChangeLog and i was happy since mariaDB is now bumped to 10.2.x, which now has JSON support among other new features. It's also has long term support until May 2022. For full documentation about changes and improvements on MariaDB 10.2.x, please refer to the official documentation, especially the incompatible changes section. Big thanks to Heinz (pprkut), one of my wishlist is now approved.

This latest update also brings some updates to the packages:
  • Mesa: Upgraded to 17.1.8
  • libgcrypt: Upgraded to 1.8.1
  • libpng: Upgraded to 1.6.32
  • jemalloc: Upgraded to 5.0.1
  • glade3: Upgraded to 3.8.6
  • nano: Upgraded to 2.8.7
  • cups-filters: Upgraded to 1.17.2
  • logrotate: Upgraded to 3.12.3

by Willy Sudiarto Raharjo ( at August 30, 2017 08:57 AM

August 26, 2017

Willy Sudiarto Raharjo

Rust is now included in -current

Thanks to the hard work of Andrew Clemons for providing rust SlackBuild, rust is now included in Slackware-Current along with cargo and for that reason, firefox is now following the latest release from Mozilla which is at 55.x instead of staying with 52.xESR release.

Slackware-Current also bumped several other packages, including:
  • kdelibs: Upgraded to 4.14.35
  • gnutls: Upgraded to 3.6.0
  • sudo: Upgraded to 1.8.21
  • cups-filters: Upgraded to 1.7.0
  • kernels: Upgraded to 4.9.45
  • gtk+3: Upgraded to 3.22.19
  • harfbuzz: Upgraded to 1.5.0
  • whois: Upgraded to 5.2.18
  • libdrm: Upgraded to 2.4.83
  • mesa: Upgraded to 17.1.7
  • dialog: Upgraded to 1.3_20170509
  • libedit: Upgraded to 20170329
One of my wishlist is now added into -current. Waiting for next entries gets removed :)

by Willy Sudiarto Raharjo ( at August 26, 2017 01:29 AM

August 14, 2017


Bekraf, Sebuah Catatan

Tiga hari, Jum’at s.d Minggu, saya berada di lingkungan JIExpo, Kemayoran. 2 (dua) hari pertama, saya menjadi SPB BlankOn, dan hari terakhir saya mencoba mengenalkan produk-produk industri kreatif kepada anak-anak saya dengan mengantar mereka.

Catatan ini tidak akan memuat tentang Bekraf atau BlankOn, karena pastilah lembaga sebesar Bekraf dan Tim Pengembang BlankOn memiliki bagian kehumasan yang akan mengemas rilis berita yang lebih menarik. Tulisan ini lebih kepada catatan saya sendiri mengenai banyak hal yang sudah saya rencanakan namun belum bisa terlaksana sampai saat ini.

Jadi, ini tulisan apa? Hanya sebuah catatan.

Media Promosi

Dari beberapa obrolan singkat dengan teman-teman, pendukung dan promotor, mengikuti ajang seperti Bekraf merupakan sebuah kewajiban sebagai media promosi. Dari mana produk dapat dikenal masyarakat bila tidak dengan cara mengikuti pameran?

Media Komunikasi

Berkumpul dengan teman-teman yang biasanya hanya bisa bersua daring, dengan para pelaku bisnis yang memanfaatkan produk, dengan promotor acara yang mendukung BlankOn, tidak ada yang lebih indah daripada bertemu muka, bukan?

Riset Pasar

Poin pertama yang saya sebutkan merupakan hal utama bila kita mengenalkan produk. Namun dibalik itu kita dapat mengumpulkan ide-ide baru dari berbagai pertanyaan yang timbul dan kesan pengunjung.

Pembenahan Diri dan Pengambilan Sikap/Keputusan

Hal yang paling bisa saya ambil adalah harus bisa membenahi diri. Banyak hal yang bisa dipelajari dari saat berkomunikasi, baik pengenalan produk maupun dalam tim.

Selain itu, saya juga mulai berani mengambil sikap. Di kesempatan inilah pertama kalinya saya berani mengambil cuti untuk kegiatan komunitas.

Terima kasih kepada teman-teman, para pendukung dan promotor yang memberi kesempatan saya untuk belajar.

by yht at August 14, 2017 11:57 AM

August 12, 2017

Willy Sudiarto Raharjo

glibc issue fixed

If you are following -current ChangeLog, you will notice that glibc issue is now fixed after several packages gets patched and rebuilt with needed patches. They are gcc, httpd, and libxslt. Some third party packages from SBo might need to be rebuilt as well to remove the xlocale.h reference.

Besides glibc fixes, there are also other changes such as:
  • kernel 4.9.41
  • mesa 17.1.6
  • gparted 0.29.0
  • libdrm 2.48.2
  • glew 2.1.0
  • curl 7.55.0
  • poppler 0.57.0
  • harfbuzz 1.4.8
  • gtk+3 3.22.18
  • pango 1.40.9
  • gdk-pixbuf2 2.36.8
  • mg123 1.25.6
  • cups-filter 1.16.1
  • mariadb 10.0.32
  • cmake 3.9.1
  • git 2.14.1
  • mercurial 4.3.1
  • subversion 1.9.7
  • libsoup 2.58.2
  • samba 4.6.7
  • tcl/tk 8.6.7
More requests can be seen in LQ thread

by Willy Sudiarto Raharjo ( at August 12, 2017 03:17 AM

August 06, 2017

Willy Sudiarto Raharjo

New glibc

I was surprised when i saw the latest ChangeLog for -current tree. It added the new shinny glibc 2.26 into the core packages, replacing the old glibc 2.25 which was just added in May. The new glibc 2.26 was released on August 2, and it was added 3 days later on August 5. I don't think  there are many other distributions who have used glibc 2.26 in their repo (even BLFS is still using 2.25git). Patrick also added new sqlite, nmap, bind, imagemagick, and dhcp along with the new glibc.

Unfortunately, there has been a report of a breakage of this new glibc and it was the case when you install a new Slackware from current ISO. If you perform an upgrade from previous glibc, you will NOT be affected by this issue. The ChangeLog does mention some deprecated and removed features, and other changes affecting compatibility:
* The synchronization that pthread_spin_unlock performs has been changed to
now be equivalent to a C11 atomic store with release memory order to the
spin lock's memory location. Previously, several (but not all)
architectures used stronger synchronization (e.g., containing what is
often called a full barrier). This change can improve performance, but
may affect odd fringe uses of spin locks that depend on the previous
behavior (e.g., using spin locks as atomic variables to try to implement
Dekker's mutual exclusion algorithm).

* The port to Native Client running on ARMv7-A (--host=arm-nacl) has been

* Sun RPC is deprecated. The rpcgen program, librpcsvc, and Sun RPC headers
will only be built and installed when the GNU C Library is configured with
--enable-obsolete-rpc. This allows alternative RPC implementations, such
as TIRPC or rpcsvc-proto, to be used.

* The NIS(+) name service modules, libnss_nis, libnss_nisplus, and
libnss_compat, are deprecated, and will not be built or installed by

The NIS(+) support library, libnsl, is also deprecated. By default, a
compatibility shared library will be built and installed, but not headers
or development libraries. Only a few NIS-related programs require this
library. (In particular, the GNU C Library has never required programs
that use 'gethostbyname' to be linked with libnsl.)

Replacement implementations based on TIRPC, which additionally support
IPv6, are available from <>. The configure
option --enable-obsolete-nsl will cause libnsl's headers, and the NIS(+)
name service modules, to be built and installed.

* The DNS stub resolver no longer performs EDNS fallback. If EDNS or DNSSEC
support is enabled, the configured recursive resolver must support EDNS.
(Responding to EDNS-enabled queries with responses which are not
EDNS-enabled is fine, but FORMERR responses are not.)

* res_mkquery and res_nmkquery no longer support the IQUERY opcode. DNS
servers have not supported this opcode for a long time.

* The _res_opcodes variable has been removed from libresolv. It had been
exported by accident.

* no longer includes inline versions of any string functions,
as this kind of optimization is better done by the compiler. The macros
__USE_STRING_INLINES and __NO_STRING_INLINES no longer have any effect.

* The nonstandard header has been removed. Most programs should
use instead. If you have a specific need for the definition of
locale_t with no other declarations, please contact and explain.

* The obsolete header has been removed.

* The obsolete signal constant SIGUNUSED is no longer defined by .

* The obsolete function cfree has been removed. Applications should use
free instead.

* The stack_t type no longer has the name struct sigaltstack. This changes
the C++ name mangling for interfaces involving this type.

* The ucontext_t type no longer has the name struct ucontext. This changes
the C++ name mangling for interfaces involving this type.

* On M68k GNU/Linux and MIPS GNU/Linux, the fpregset_t type no longer has
the name struct fpregset. On Nios II GNU/Linux, the mcontext_t type no
longer has the name struct mcontext. On SPARC GNU/Linux, the struct
mc_fq, struct rwindow, struct fpq and struct fq types are no longer
defined in sys/ucontext.h, the mc_fpu_t type no longer has the name struct
mc_fpu, the gwindows_t type no longer has the name struct gwindows and the
fpregset_t type no longer has the name struct fpu. This changes the C++
name mangling for interfaces involving those types.

* On S/390 GNU/Linux, the constants defined by have been
synced with the kernel:

are not supported on this architecture and have been removed.


Programs that assume the GET/SETREGS ptrace requests are universally
available will now fail to build, instead of malfunctioning at runtime.
GCC is also known to be broken with glibc 2.26. You can read the issue here. While there are patches already on git master, probably best to wait for GCC 7.2.0 which will be released next week. It should have the fixes included.

As glibc is a core library used by many other applications/libraries, there could be more hidden bugs and it's time for another bug hunting. Go build and test!!!

by Willy Sudiarto Raharjo ( at August 06, 2017 12:49 AM

July 31, 2017

Willy Sudiarto Raharjo

End of July Status + My Wishlist

I'm swamped with my daily work, so i didn't have time to write any blog post for the last three weeks, but i'm following Slackware's changelog daily. It's been an impressive changes for the past three weeks and here's some of the highlight:
  • vda support in liloconfig, useful for VMs used in QEMU
  • better handling for template strings in mkinitrd
  • many new default configurations in /etc/default
  • support for btrfs and ocfs2 have been added in the busybox/mkinitrd
  • hdri support is now added in ImageMagick
  • removal of idnkit (everything is now linked to libidn2)
  • libwebp is now included in the distribution
  • grayscale support in gdk-pixbuf2 has been restored
  • busybox update to 1.27.1
  • running latest LTS kernel: 4.9.40
Here's my wishlist for next Slackware:

by Willy Sudiarto Raharjo ( at July 31, 2017 03:12 PM

July 25, 2017

Widya Walesa

Revisi - Dual Slackware Current Dalam Satu Partisi

Revisi - Dual Slackware Current Dalam Satu Partisi

Submitted by w41lf0x on Tue, 07/25/2017 - 20:43

Sebelumnya saya menulis mengenai prosedur instalasi dual Slackware Current (x86, x86_64) dalam satu partisi menggunakan filesystem btrfs. Dalam prosedur tersebut saya memanfaatkan fitur subvolume dari btrfs sebagai lokasi DEVROOT untuk setiap OS yang saya pasang. Permasalahannya adalah skrip init mkinitrd Slackware belum mendukung subvolume meskipun telah mendukung filesystem btrfs.

by w41lf0x at July 25, 2017 01:43 PM

July 19, 2017

Widya Walesa

Dual Slackware Current Dalam Satu Partisi

Dual Slackware Current Dalam Satu Partisi

slackwareKali ini saya akan menulis secara singkat panduan untuk memasang dua OS slackware current berbeda arsitektur (32 dan 64 bit) ke dalam satu partisi menggunakan filesystem btrfs. Harap diingat bahwa kehati-hatian amat sangat diperlukan karena teknik ini memang tidak mudah dan bukan sebuah kondisi umum atau normal. Jadi jangan pernah mengharapkan teknik ini semudah anda memasang ubuntu atau fedora di mesin anda. Jika anda memang mengharapkan kemudahan, silakan stop di sini, tutup jendela atau tab berisi halaman ini, dan buka atau

w41lf0x Thu, 07/20/2017 - 06:55

by w41lf0x at July 19, 2017 11:55 PM

July 17, 2017

Willy Sudiarto Raharjo

Happy 24th Anniversary

Today marks the 24th anniversary of Slackware since it was released on 1993.Currently, Slackware is the oldest Linux distribution still actively maintained single-handed by Patrick Volkerding himself with lots of help by the Slackware Core Team and also contributors all around the world who suggested a lot of ideas and patches, mostly in LQ.

Twenty four years of constant maintaining a Linux distribution is not an easy thing, especially when the user base is growing with lots of new ideas and requests. Patrick keep firms on his philosophy while maintaining Slackware throughout all these years. That's why you will feel familiar when you install a new version of Slackware since the installation method and how the system is configured doesn't really change on every releases. I remembered my first Slackware Linux installation was in 2002 and at that time, i was just testing several few Linux distributions out of my curiosity. I started to use Slackware Linux as my main operating system in 2005 and since then i never moved on to another distributions.

Many people doubt that Slackware has future when systemd is adopted by many upstream project and distributions, but Slackware Linux stands still and keep using the old init system which works out-of-the-box. Patrick doesn't just just follow others in introducing new packages into the core packages, but he evaluates the maintainability and stability of each packages in the repository. This way, he can keep Slackware supported for a long time. While other Linux distributions provide LTS support, Slackware doesn't have LTS label. Instead, Patrick keep supporting older Slackware releases as long as possible with his strict policy of updating only due to security vulnerabilities or special circumstances exception. Slackware 13.0 which was released in 2009 is still supported up to now and still there's no sign of EOL yet (That is around 8 years already). The last EOL was given to Slackware 8 - 12.2 in December 2013 and it reached 11 years of support for Slackware 8. That's almost twice than LTS support by other distributions.

I'm happy to use Slackware Linux and big thanks to Patrick Volkerding for creating this great product. I appreciated the warm community surrounding Slackware where we work to improve Slackware Linux in many ways by creating projects that complements Slackware Linux. I'm looking forward for more contributions to Slackware Linux from the communities.

Happy Anniversary Slackware Linux!!!

by Willy Sudiarto Raharjo ( at July 17, 2017 12:05 PM

July 09, 2017

Willy Sudiarto Raharjo

SBo Stats

For those who are interested in SBo statistics, i have generated and published git statistics for SBo project since the infrastructure moved to GIT in 2010 which can be accessed here: It was generated using gitstats with default configuration and no changes through the theme (customizable via CSS).

I was surprised that we had 999 authors for this project (some are duplicates due to inconsistencies when writing the maintainer's name in .info). While some of them are now inactive, i'm still grateful that SBo attracts so many users out there to contribute to this project.We will try to address those inconsistencies so we can have closer estimate to the real authors.

We now have more than 6500 scripts in our repository which counts for 33,149 files with 1,456,319 lines of numbers. It's awesome to look into the progress of this project.

Thank you for all the contributions so far from all authors/maintainers. We are looking forward to see more contributions from all of you and keep sending us new scripts/patches to grow our repository.

PS: I may not periodically update the stats every week!!

by Willy Sudiarto Raharjo ( at July 09, 2017 01:07 AM

New package: libidn2

Some changes have came up since my last post and i will try to highlight them here:
  • kernel: Upgraded to 4.9.36
  • grep: Upgraded to 3.1
  • acct: Upgraded to 6.6.4
  • cups: Upgraded to 2.2.4
  • cups-filter: Upgraded to 1.14.1
  • gphoto2/libgphoto2: Upgraded to 2.5.14
  • tmux: Upgraded to 2.5
  • apr: Upgraded to 1.6.2
  • apr-utils: Upgraded to 1.6.0
  • libpng: Upgraded to 1.6.30
  • sound-theme-freedesktop: Upgraded to 0.8
  • mesa: Upgraded to 17.1.4
  • xscreensaver: Upgraded to 5.37
  • cgmanager: Upgraded to 0.41
  • ghostscript: Upgraded to 9.21
  • mercurial: Upgraded to 4.2.2
  • fftw: Upgraded to 3.3.6_pl2
  • gcr: Upgraded to 3.20.0
  • gnome-keyring: Upgraded to 3.20.1
  • libunistring: Upgraded to 0.9.7
  • pcre: Upgraded to 8.41
  • NetworkManager: Upgraded to 1.8.2
  • ca-certificates: Upgraded to 20161130
  • curl: Upgraded to 7.54.1
  • dhcp: Upgraded to 4.3.5
  • dnsmasq: Upgraded to 2.77
  • gnutls: Upgraded to 3.5.14
  • lftp: Upgraded to 4.7.7
  • php: Upgraded to 5.6.31 (security fix)
  • whois: Upgraded to 5.2.16
  • fontconfig: Upgraded to 2.12.4
  • libinput: Upgraded 1.8.0
We also have a new package: libidn2 which requires some packages to be rebuilt. Make sure that you install the new package so that other applications will find the library on the next start.

by Willy Sudiarto Raharjo ( at July 09, 2017 12:28 AM

July 01, 2017

Willy Sudiarto Raharjo

Security Update: kernel and glibc

Patrick has just issued another security advisory related to kernel. This time, it could lead to possible stack exhaustion, memory corruption, and arbitrary code execution. Both -current and -stable (14.2) are updated with the latest LTS kernel 4.9.35 and 4.4.75.

The other advisory released today was about glibc, which is now rebuilt with upstream patches to improve security. This update was also applied back to 14.2.

You should deploy the updates as soon as possible and reboot the machine in order to get the fixes along with other updates included in the latest kernel release.

by Willy Sudiarto Raharjo ( at July 01, 2017 03:14 PM

June 30, 2017

Willy Sudiarto Raharjo

Security Updates: bind, httpd, libgcrypt

Patrick has issued several Slackware advisories today related to several packages:
  • bind: Upgraded to 9.9.10_P2, 9.10.5_P2, and 9.11.1_P2 (13.0 through - current)
  • httpd: Upgraded to 2.2.32 and 2.4.26 (13.0 through - current)
  • libgcrypt: Upgraded to 1.7.8 (14.2 and -current)
  • kernel: Upgraded to 3.10.107 (only for 14.1)
In -current, several packages gets bumped as well:
  • mkinitrd: Added support to include microcode and bumped to 1.4.10
  • nano: Upgraded to 2.8.5
  • screen: Upgraded to 4.6.0
  • llvm: Upgraded to 4.0.1
  • pcre: Upgraded to 8.40
  • readline: Upgraded to 7.0.003
  • xfdesktop: Upgraded to 4.12.4
It seems that several project are transititioning to Python 3 and some package in Slackware does require Python 3 in order to get bumped to new version. We will see if Python 3 finally gets approved to be included in the core packages and what other new package is included along with Python 3 inclusion.

by Willy Sudiarto Raharjo ( at June 30, 2017 04:38 AM

June 27, 2017

Willy Sudiarto Raharjo

Stack Clash Fixes

You may have heard about Stack Clash vulnerabilities that was published by Qualys last week. It was an old bug, but affected many systems running Linux both x86 and x86_64. As they coordinated the fixes with upstream vendors, the fixes has been released for public. Today's update is all about kernel update both in -stable (14.2 only) and -current. They are now upgraded to 4.4.74 and 4.9.34 which contains the fixes for Stack Clash. You are advised to upgrade your kernel as soon as possible. The other update that were both in -stable and -current are mozilla-thunderbird which is now updated to 52.2.1.

For those running -current, there are more updates in this batch:
  • lrzip: Upgraded to 0.631
  • lvm2: Upgraded to 2.02.171
  • time: Upgraded to 1.7.2
  • mpg123: Upgraded to 1.25.0
  • glib2: Upgraded to 2.52.3
  • glibmm: Upgraded to 2.52.0
  • gtkmm3: Upgraded to 3.22.1
  • plus more in the past updates
Users running Skylake/Kabylake processors should also read this thread on LQ about a bug in the Hyper-Threading feature and apply the fix as soon as possible.

by Willy Sudiarto Raharjo ( at June 27, 2017 12:57 AM

June 16, 2017

Willy Sudiarto Raharjo

Mid June Updates

More than 2 weeks since i gave an update to -current development and things are going more interesting in -current branch. It stays up-to-date with latest changes upstream while keeping the stability standards high. Here's some highlight in the last two weeks:
  • Kernel: Upgraded to 4.9.31
  • Firefox: Upgraded to 52.2.0ESR release
  • Thunderbird: Upgraded to 52.2.0 release and switched to GTK+3
  • NetworkManager: Upgraded to 1.8.0
  • sqlite: Upgraded to 3.19.3
  • bind: Upgraded to 9.11.1_P1
  • gnupg2: Upgraded to 2.1.21
  • gpgme: Upgraded to 1.9.0 (drop libgpgme-pthread support)
  • pth -> npth replacement
  • dirmngr removal (included in latest gnupg2)
  • samba: Upgraded to 4.6.5
  • glew: Upgraded to 2.0.0
  • irssi: Upgraded to 1.0.3
  • libdrm: Upgraded to 2.4.81
  • mesa: Upgraded to 17.1.2
  • gdb: Upgraded to 8.0
  • sane: Upgraded to 1.0.27
  • alsa-lib: Upgraded to
  • cmake: Upgraded to 3.8.2
  • mutt: Upgraded to 1.8.3
Due to the changes in the gnupg2 package, some startup scripts might need a little tweak. It dropped some options, so you might need to look up your scripts. Also i found an annoying message about smart card detection every time you sign a file using gpg2. I have notified Patrick about this and send him upstream patch to supress those messages. Let's just wait for the decision.

by Willy Sudiarto Raharjo ( at June 16, 2017 03:25 PM

June 07, 2017

Willy Sudiarto Raharjo

Migrating to x86_64

This evening, i decided to remove my Slackware-Current installation on my old Asus laptop which is still at 32 bit architecture and replace it with Slackware 14.2 64 bit architecture. The reason is simple: more and more upstream projects are supporting only for x86_64. Google, Facebook, Apple, and many big companies invest heavily on x86_64 architecture which has better future. It supports more memory without the use of PAE and better overall performance. Another reason is because i want to play more with Docker, which is (again) only available for x86_64 platform. Docker is now considered mature and ready to be deployed into production environments, so it's time to learn more about it.

I decided to stay with Slackware64 14.2 instead of going with -current for this laptop. I simply use the dual-side DVD of Slackware64-14.2 i got from Slackware Store and install it directly on the laptop. I formatted the old drive and in just under 15 minutes, the full installation is completed.

Next thing was to grab latest patches from -stable repository and i noticed that the wireless LAN was detected, but it wasn't working, so i grab a LAN cable for the initial setup. Later on, i found out that latest firmware from Intel for my WLAN device included in the kernel-firmware package (iwlwifi-1000-5.ucode) is not working as i got lots of error messages in dmesg. I used to wrote about this on this blog back in 2009 and it was working with previous version of iwlwifi driver (iwlwifi-1000-3.ucode), so i tried to remove the iwlwifi-1000-5.ucode and rebooted and i can connect to my WiFI at home. Lucky for me i always wrote all the steps i have done on my blog so it can be used as self-reminder.

Next, i download latest patches, installing sbopkg and building third party applications, and copying back my data from the other computer. It took some time but it finally ended after dinner and before my kids went to bed. I was able to build docker on this laptop but i haven't tried to play with it much further. I did play a bit on my new laptop while i was in the office today. I bought an online course from Udemy for $10 about Docker with Bret Fisher.

Oh, if you are having problems building Docker from SBo, most likely it was because you forget to logout and login again after installing google-go-lang. It was needed to set up the new environment (GOROOT) which is needed for other projects that depends on google-go-lang. Don't forget to use "su -" so you have full root environment instead of just regular "su".

by Willy Sudiarto Raharjo ( at June 07, 2017 03:49 PM

June 01, 2017

Ali Ahmadi

Memasang Papan Ketik dalam Layar “onboard” di Slackware Linux

بسم الله الرحمان الرحيم onboard adalah sebuah program papan ketik dalam layar (on-screen keyboard) yang dapat berguna bagi pengguna komputer tablet dan pengguna dengan gangguan mobilitas. Perkakas ini telah mendukung makro, pembuatan tata letak yang mudah dan penyaranan kata. Perkakas ini awalnya dikembangkan oleh Chris Jones pada tanggal 18 Juli 2006 yang dibangun menggunakan bahasa pemrograman … Lanjutkan membaca Memasang Papan Ketik dalam Layar “onboard” di Slackware Linux

by idnux at June 01, 2017 02:52 PM

May 28, 2017

Willy Sudiarto Raharjo

What Happened in 10 Days of Development?

My last post was about 11 days ago when we were talking about security update for kdelibs and freetype. Since then, -current is still progressing but i didn't write anything for the past 10 days. So, what happened in the past 10 days?

First, we have a new kernel. It jumped 2 minor releases to 4.9.30, the latest LTS release from 4.9.x branch, maintained by Greg K-H. Next we have mesa upgraded to 17.1.1 along with enabled Vulkan drivers for Intel and Radeon, thanks to a new package vulkan-sdk.

alsa-lib and alsa-plugins are now upgraded to 1.1.4, bringing many updates to the sound stack. ffmpeg also received it's first minor release, 3.3.1 fixing tons of bugs. We also see many updated packages:
  • aaa_terminfo: Upgraded to 6.0
  • bash: Upgraded to 4.4.012
  • ccache: Upgraded to 3.3.4
  • gkrellm: Upgraded to 2.3.10 
  • mozilla-firefox: Upgraded to 52.1.2esr
  • nano: Upgraded to 2.8.4 
  • NetworkManager: Upgraded to 1.8.0
  • newt: Upgraded to 0.52.20 
  • pango: Upgraded to 1.40.6
  • samba: Upgraded to 4.6.4 (security update)
  • slang: Upgraded to 2.3.1a
  • sqlite: Upgraded to 3.19.0
  • tcl/tk: Upgraded to 8.6.6
  • vim: Upgraded to 8.0.0600
  • xfce4-terminal: Upgraded to

by Willy Sudiarto Raharjo ( at May 28, 2017 04:39 PM

May 26, 2017

Ali Ahmadi

Memasang lightdm di Slackware Linux

بسم الله الرحمان الرحيم LightDM merupakan sebuah manajer tampilan lintas desktop yang ringan dan mendukung sejumlah teknologi tampilan (desktop) yang berbeda, misalnya X, Wayland dan Mir. Program ini awalnya dikembangkan oleh Robert Ancell dari Cannonical Ltd. yang dirilis pertama kali pada tanggal 10 September 2010. Versi stabil terakhir saat ini adalah versi 1.22.0 yang dirilis pada tanggal 22 Maret 2017. Program ini … Lanjutkan membaca Memasang lightdm di Slackware Linux

by idnux at May 26, 2017 09:08 AM

May 17, 2017

Willy Sudiarto Raharjo

Security Update: kdelibs, freetype

Current is progressing nicely after a basic toolchain bump last week. The kernel stock is bumped rapidly and bugs are squashed while security updates were deployed in short period. There are two security updates that were recently released:
  • kdelibs: Upgraded to 4.14.32
  • freetype: Rebuilt to fix out-of-bound heap-based overflow
Lots of small improvements were added into current's mkinitrd, elilo, and sysvinit-scripts. The kernel also received 2 changes during the last two updates: 9P_FS_POSIX_ACL and CIFS_SMB2. These two were requested in LQ. Patrick is following mesa development as well so at this moment, we have latest mesa available in -current. We also have the latest git 2.13.0 which includes big changes for developers.

Having latest version on a package comes with a price, especially when it relates to GCC. Since Slackware jumped from 5.3.0 to 7.1.0 in -current (6.3.0 was in /testing for a while) and the changes itself are quite big, some users quickly found some scripts in SBo no longer build under -current. Some are easily fixed, while some may take longer to fix. Luckily, the open source community are very fast on fixing bugs so sometimes it's quite easy to find the solution in other open source projects in GitHub.

by Willy Sudiarto Raharjo ( at May 17, 2017 07:48 AM

May 13, 2017

Ali Ahmadi

mythes-id, hunspell-id dan hyphen-id telah tersedia di

بسم الله الرحمان الرحيم Setelah sebelumnya paket “kbbi-qt” telah tersedia di SBo, alhamdulillah kini paket kamus tesaurus Bahasa Indonesia untuk perangkat lunak perkantoran LibreOffice/Apache “mythes-id” beserta hunspell-id dan hyphen-id juga mengikuti dan telah tersedia di Bagi teman-teman yang ingin mencoba ketiganya bisa mengunjungi pranala berikut ini: mythes-id : hunspell-id : hyphen-id : Selamat mencoba dan semoga … Lanjutkan membaca mythes-id, hunspell-id dan hyphen-id telah tersedia di

by idnux at May 13, 2017 01:07 PM

kbbi-qt di

بسم الله الرحمان الرحيم Ada kabar gembira bagi para pengguna Slackware Linux di Indonesia. Alhamdulillah, kini aplikasi Kamus Besar Bahasa Indonesia Luring “kbbi-qt” telah tersedia di Bagi teman-teman yang ingin mencoba, bisa mengunjungi pranala berikut Selamat mencoba dan semoga bermanfaat.

by idnux at May 13, 2017 04:00 AM

May 10, 2017

Ali Ahmadi

Memasang Xfce Power Manager 1.6.0 di Slackware64 Current

بسم الله الرحمان الرحيم Sejak Slackware64 Linux Current dengan desktop environtment Xfce terpasang di komputer jinjing pribadi saya, ada satu masalah kecil namun cukup mengganggu bagi diri saya pribadi. Masalah tersebut adalah tidak tampilnya informasi tentang status baterai pada tooltip pada aplikasi Xfce Power Manager. Karena masalah tersebut, saya jadi kesulitan untuk sekedar mendapatkan informasi tentang status baterai, sehingga pernah pada … Lanjutkan membaca Memasang Xfce Power Manager 1.6.0 di Slackware64 Current

by idnux at May 10, 2017 08:58 AM

May 09, 2017

Willy Sudiarto Raharjo

Cinnamon 3.4 for Slackware 14.2

I have just pushed necessary changes to bring Cinnamon 3.4 packages for Slackware 14.2 users. I bumped some dependencies in the process, but not all deps are bumped since some requires newer GTK+3 stack, which only happening in current.

There are some notes on this packages:
  • I keep mozjs 24.x branch in 14.2 since it works fine
  • Same thing with cjs 3.2.0 since newer cjs requires newer libraries
  • Cinnamon 3.4 can work with cjs 3.2 or 3.4.
  • I disabled wacom support in cinnamon-control-center to avoid adding another dependency (libwacom). This package already exists in Slackware-Current, so it's built with wacom support.
For those who want to compile Cinnamon 3.4 for Slackware 14.2, please use 14.2 branch. Master branch is now used for tracking Slackware-Current.

Let me know if you found any trouble using Cinnamon 3.4.

by Willy Sudiarto Raharjo ( at May 09, 2017 03:02 PM

May 07, 2017

Willy Sudiarto Raharjo

MP3 support in Current

Since MP3 patent has expired in April, some distributions is planning to add full MP3 support by default, starting with Fedora and now Slackware is doing the same thing, except that it has been included in the latest -current tree by the addition of lame package and all relevant packages are being rebuilt to support libmp3lame. I hoped that someday x264 can be included as well or even better x265. They are released under GNU GPL v2.

Another multimedia-related packages being bumped are GStreamer and gst-plugins-{base,good,libav}. They are now upgraded to 1.12.0 which was released few days ago. Flex is now bumped to 2.6.4 which should honor yy_* macros and fix many issues in other open source projects. Lastly, glibc is rebuilt to revert a patch that caused IFUNC errors to be emitted during boot. It's just purely cosmetic.

I'm pretty sure next Slackware release will be another awesome release with all the great goodies. If you are planning to test the latest Slackware-Current without installing it on your productin machine, wait for alienBOB to update Slackware Live ISOs and you can test it on your virtual machine.

by Willy Sudiarto Raharjo ( at May 07, 2017 04:35 AM

May 06, 2017

Willy Sudiarto Raharjo

Cinnamon 3.4 Packages for Current

I have just pushed latest Cinnamon 3.4.0 changes in master branch of my CSB project and also pushed the binary packages into the usual testing playground (Thanks to Tadgy).  At this moment, i just tested against -current (it was built on top of latest May 5 update with the latest toolchain) and i still haven't decided whether i will backport this into 14.2 or not.

I made some changes in some script to have them built as noarch since most of them are translations, icons, images, and theme files. This will reduce the build time when building for two architectures. The biggest change in Cinnamon 3.4 packages is the new mozjs which is based on Firefox 38.8.0. In future release, upstream is planning to push forward and rebase it from newer Firefox source such as 45 and 51. For now, Cinnamon added support for mozjs 38.8.0 and we will use that version.

Looking at previous releases, it will take some time to stabilize Cinnamon and there will be several minor releases following changes upstream. This trend will continue until next Linux Mint gets released since Cinnamon 3.4 is getting prepared for it.

If you are following AlienBOB's Slackware Live project, then you can use the script to generate a new ISO for testing before using it on your machine.

Enjoy Cinnamon 3.4 on Slackware Current

by Willy Sudiarto Raharjo ( at May 06, 2017 02:38 PM

May 05, 2017

Willy Sudiarto Raharjo

NVidia and VMWare Workstation on Linux Kernel 4.9

As mentioned before, Slackware jumped to Linux Kernel 4.9 and this will surely caused NVidia and VMWare Workstation to break. I was quite lucky since Linux Kernel 4.9 has been around for some time and other people have found a way to solve this problem. This post is intended to be a self note just in case i need to re-do the same steps.

NVidia 304.135
My desktop is still using the legacy NVidia driver 304.135. There's no new release for now, so we will need to patch 2 things: the kernel and the driver.
First, you need to patch the kernel using the mtrr.patch as listed in my SlackHacks. Once rebooted, you will be using the new patched kernel image. Time to go to patch the NVidia driver. Let's extract the source of the NVidia driver:
./NVIDIA-Linux-x86-304.135 --extract-only
cd  NVIDIA-Linux-x86-304.135
patch -p1 < /path/to/kernel-4.9.patch

at this point, the installer will work with Linux Kernel 4.9. As a bonus, i accepted NVidia's new xorg.conf and i got a higher resolution (1280x1024) compared to previous config (1024x768). It seems that i haven't updated my xorg.conf for a LONG TIME ago.

VMware Workstation
I'm still running x86 machine, so i'm stuck with VMWare Workstation 10.x. If you are using x86_64, then you can try to jump to the latest 12.5 and you will have less trouble on patching the kernels.
Patching VMWare Workstation 10.x is getting trickier as new kernel gets released. For Linux Kernel 4.9, i have written a small README. Here's the complete steps by steps:
  • Navigate to /usr/lib/vmware/modules/source
  • extract vmmon.tar: tar xvf vmmon.tar
  • open vmmon-only/linux/hostif.c and change 
unsigned int anonPages = global_page_state(NR_ANON_PAGES);
unsigned int anonPages = global_page_state(NR_ANON_MAPPED);

and also change

retval = get_user_pages(current, current->mm, (unsigned long)uvAddr, numPages, 0, 0, ppages, NULL);


     retval = get_user_pages((unsigned long)uvAddr, numPages, 0, ppages, NULL);

       retval = get_user_pages((unsigned long)uvAddr, numPages, 0, 0, ppages, NULL);
       retval = get_user_pages(current, current->mm, (unsigned long)uvAddr,
                           numPages, 0, 0, ppages, NULL);

  • pack vmmon: tar cvf vmmon.tar vmmon-only
  • extract vmnet.tar: tar xvf vmnet.tar
  • open vmnet-only/netif.c and comment this line
dev->trans_start = jiffies;
  • Change this line
retval = get_user_pages(current, current->mm, addr, 1, 1, 0, &page, NULL);


     retval = get_user_pages(addr, 1, 0, &page, NULL);

       retval = get_user_pages(addr, 1, 1, 0, &page, NULL);
       retval = get_user_pages(current, current->mm, addr,
                           1, 1, 0, &page, NULL);

  • pack vmnet: tar cvf vmnet.tar vmnet-only
  • run vmware-modconfig --console --install-all 
Thanks to the community for sharing all the information i need to get my NVidia and VMware Workstation working again.

The only package that isn't working at the moment is VirtualBox. Even with the latest 5.1.22, it failed to build with this error message on dmesg: vboxdrv: Unknown symbol __udivmoddi4. It seems to be related with latest GCC 7.1.0.

    by Willy Sudiarto Raharjo ( at May 05, 2017 04:49 PM

    New Toolchain

    Patrick finally pushed the basic toolchain in the latest batch of update and it was kinda surprising. First of all, it jumped from GCC 5.4.0 into the newly released GCC 7.1.0. There were a GCC 6.2.0 packages in testing/, but it seems that Patrick decided to abandon that version and go with the latest version instead. The latest GCC 7.1.0 version removed gcc-java and added gcc-brig.

    Second toolchain that got bumped is glibc. It's now using the latest glibc 2.25. Some coverage for glibc 2.25 can be read from Phoronix site. I really like this new feature: the stack smashing protector being enabled via --enable-stack-protector=strong.

    Third toolchain is the kernel. Patrick is switching to latest LTS release: 4.9.x branch. It's at 4.9.26 at the moment, but it will be bumped as new version got released. I was hoping to get 4.10 or even 4.11, but it seems it would be safer to use LTS kernel.

    That's the good side. Now let's see the side effect.

    Most likely some of the scripts in SBo may not work with the latest update, mostly due to new GCC. It's a big jump from 5.4.0 to 7.1.0. It will be fixed during the development cycle of the next Slackware release, but for now, you are on your own. Always look for ponce's work on -current branch. That's where all the latest work on SlackBuild script tested on current goes.

    If you are using applications or drivers that depends on kernel modules, you might need to find a patch for those applications. I used NVidia legacy driver (304.135) and VMWare Workstation here, so i'm going to post my solution in the next post.

    by Willy Sudiarto Raharjo ( at May 05, 2017 04:11 PM

    May 04, 2017

    Widya Walesa

    Rilis wlsgnome-3.22-rc3

    Rilis wlsgnome-3.22-rc3

    Kemarin lupa menambahkan entry polkit-1 ke /etc/pam.d. Sekarang sudah diperbaiki di pra-rilis rc3.


    • elogind: Remove unneeded build options. Adding polkit-1 entry in pam.d
    • apps: Move gnome-calendar, gnome-clocks, gsound, libmediaart, and totem-pl-parser to base
    • SBo_PACKAGES.txt: Add geoclue, perl-xml-twig, and pcre2. Resorting.

    Silakan diunduh:

    Selamat mencoba

    w41lf0x Thu, 05/04/2017 - 10:39

    by w41lf0x at May 04, 2017 03:39 AM

    May 02, 2017

    Widya Walesa

    Perbaikan Login Budgie Desktop Dari GDM

    Perbaikan Login Budgie Desktop Dari GDM

    gnome-logo-hitamSetelah melakukan debug selama dua hari terhadap kegagalan login budgie-dektop melalui GDM, akhirnya diputuskan bahwa polkit milik Slackware harus diganti (dibangun ulang) untuk mendukung pam dan elogind. Hal ini diketahui dari log debug GDM yang menyebutkan bahwa gnome-settings-daemon tidak dapat memperoleh daftar sesi desktop setelah melakukan query ke elogind. Akibatnya gnome-settings-daemon mengirimkan pesan ERROR yang selanjutnya direspon oleh budgie-wm dan budgie-desktop dengan menutup sesi desktop yang sedang berjalan (SIGQUIT/SIGTERM). Inilah sebabnya jika saya login ke budgie-desktop via GDM, pada saat budgie-wm mulai berjalan, sesi desktop akan langsung selesai dan kembali ke halaman login GDM. Selalu begitu.

    w41lf0x Tue, 05/02/2017 - 13:17

    by w41lf0x at May 02, 2017 06:17 AM

    May 01, 2017

    Widya Walesa

    wlsbuild - GNOME 3.22 rc1

    wlsbuild - GNOME 3.22 rc1

    gnome-logo-hitamSelamat siang,

    Diumumkan kepada khalayak bahwa skrip pembangun untuk desktop GNOME atau yang suka saya sebut sebagai wlsgnome telah masuk ke dalam status prarilis RC1. Wlsgnome versi RC ini digunakan untuk membangun desktop GNOME versi 3.22. Selain itu, saya sertakan juga skrip tambahan untuk membangun desktop Budgie versi 10.3 sebagai alternatif dari gnome-shell. Bukan tidak mungkin pembaca dapat memasang desktop Cinnamon yang dibuat oleh Pak Willy ke dalam instalasi GNOME ini. Rilis wlsgnome 3.22 rc1 ini memiliki alasan khusus yang tidak bisa ditawar-tawar. Rilis ini adalah sebuah keharusan, alasannya ada di paragraf berikutnya. Prarilis ini dapat diunduh melalui halaman ini:

    w41lf0x Mon, 05/01/2017 - 12:29

    by w41lf0x at May 01, 2017 05:29 AM

    April 28, 2017

    Widya Walesa

    OpenBenchmark - BFQ Storage-I/O Scheduler

    OpenBenchmark - BFQ Storage-I/O Scheduler

    slackwareSebelumnya saya hanya mengunggah dua buah video dalam percobaan menggunakan I/O Scheduler BFQ. Sekarang saya mengunggah hasil benchmark menggunakan fasilitas benchmark dari Phoronix Test Suite. Phoronix Test Suite adalah peralatan pengujian komputer yang berlisensi opensource dengan sistem pengujian terstandarisasi dan dapat diduplikasi oleh siapapun. Pengujian saya juga dapat diduplikasi oleh pembaca dengan memasang program benchmark Phoronix Test Suite dan kemudian menjalankan perintah berikut ini:

    w41lf0x Fri, 04/28/2017 - 16:33

    by w41lf0x at April 28, 2017 09:33 AM