How to Install KaOS Linux 2018.12 + First Boot Experience!

KaOS Linux is independent Linux Distribution intended to bring a joyful experience of vanilla KDE and Qt to the mass! It begin as a linux project called ‘KdeOS’ in 2013. Although it build from scratch and totally independent, KaOS is heavly inspired by Arch Linux. KaOS is rolling release distribution, and releasing one installer ISO every month or so.

KaOS Linux 2018.12 is the latest ISO available. KaOS 2018.12 is bringing KDE Plasma Desktop framework 5.53.0, and Plasma 5.14.4 and KDE Applications Suite version 18.12.0.

KaOS Linux 2018.12 released as 1,990 MB ISO file. You can download it from Sourceforge:

Building LiveUSB

You have to burn those ISO to USB Flash Disk, optimally around 4GB size. You can use dd command in Linux or other burner software like Etcher or ROSA Image Writer.

With dd command:

sudo dd if=/home/user/Downloads/KaOS-2018.12-x86_64.iso of=/dev/sdX

How to Install

Boot your KaOS LiveUSB to your computer. Take a time, click Install KaOS.

KaOS is using Calamares Installer, a distro-agnostic installer that use by many other distributions.

Click Next to begin installation.

Read the Release Notes, click Next

Select your Location Time (based on your Country/City)

Select your Keyboard layout

Select your partition (root partition / or customize as your own)

Create new user and password for user and root account

Wait until installation process is finished.


How to Install OpenMandriva From Minimal ISO

OpenMandriva, as you may know, is derivative and a fork of Mandriva that tragically bankrupt at several years ago. OpenMandriva is now released as separated and continuation of Mandriva/Mandrake Linux with some unique feature beside other Linux distribution.

OpenMandriva is the one and only Linux Distribution that compiled and used CLANG as their default compiler, replacing GNU GCC. You can watch their massive activity Building RPM package and ISO in their Automated Build Farm (ABF) on and their Github pages.

One of the respective product of OpenMandriva is the Cooker ISO that released as developer preview of their latest iteration developed. You can check their latest ISO produced for this platform at and watch for the completed build. OpenMandriva Cooker is using DNF as their package manager, not using URPM anymore! whoaaaah!

As this article published, the completed build is Build number 2355. It came very raw, no installer, no display manager, no desktop environment. But you can install it your self!

How to Install OpenMandriva from their Minimal ISO!

This tutorial is very raw, all commands is typed an run in the terminal. You must have a good experience in terminal to follow this tutorial.


You must prepare the desired partition to install, maybe with other distribution or GParted distro.

And you can follow this step by step tutorial.

format the desired root partition to ext4 format with this command:

mkfs.ext4 /dev/sda2

Mount those partition to /mnt or else:

 mount /dev/sda2 /mnt

Install Rsync:

dnf -y install rsync

Copy all Live CD content/ISO content to root mouting point like /mnt:

rsync -av --one-file-system / /mnt

You can install other package/desktop environment or your patch to root partition using DNF and –installroot parameter

dnf -y --installroot=/mnt install task-x11 sddm icewm fluxbox openbox dnf grub2 firefox xterm

Installing Grub

Mount peripheral and devices to the new root partition:

mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys

Chroot to root partition like /mnt:

chroot /mnt

and Install Grub2 to /dev/sda with:

grub2-install /dev/sda

make a new Grub menu with this command:

grub2-mkconfig -o /boot/grub2/grub.cfg

and last but not lease, create new user: adduser xxx, passwd xxx

First Boot!

You can reboot the live CD, remove the medium and experience the latest OpenMandriva Cooker!

Tutorial PHP7: Membuat Dashboard Admin (Part 1)

Tutorial kali ini kita akan membuat dashboard admin yang ditujukan untuk PHP versi 7 ke atas, dan didesain dari awal sebagai aplikasi Modular yang siap untuk menggunakan teknologi-teknologi kekinian, seperti Docker Container, Microservices dll.

Pada tutorial kali ini, kita akan menggunakan framework PHP independen buatan anak Indonesia, yaitu Panada Framework 2.0.

Membuat Project

Untuk membuat project, pastikan sudah mempunyai composer di sistem.

composer create-project panada/app --prefer-dist --stability=dev namaproject

akan tercipta folder dan file-file pada folder namaproject:

untuk menjalankan server, kita gunakan internal server PHP 7 dengan sintaks:

php -S localhost:8000 -t namaproject/public

dan silakan buka URL http://localhost:8000 di browser kamu, akan tampil

Selamat berjumpa di part selanjutnya.

3 Aplikasi Penting Buat Home Screen Android Kamu (Desember 2018)

Android Home Screen tiap orang bisa berbeda-beda, tergantung mood dan bahkan kepribadian masing-masing. Meskipun hanya sekedar ganti wallpaper misalnya. Nah, pada artikel ini kita akan bahas 3 aplikasi yang harusnya ada di Home Screen kamu.

Beberapa dari aplikasi ini belum begitu terkenal di Indonesia, tapi sudah banyak dan disukai pengguna Android di luar negeri. Apa saja?


Tapet adalah aplikasi yang sangat membantu bagi kamu yang seneng gonta-ganti wallpaper, khususnya wallpaper yang menampilkan warna yang polos dan unik. Tapet bisa mengatur pergantian wallpaper itu secara otomatis, bisa diatur harian, per jam juga bisa.

Harga: Free/Gratis

Tampilan aplikasi Tapet

Tapet bisa diunduh dari Playstore disini:


Masih soal wallpaper, namanya Wallmag. Wallmag sendiri mengatur wallpaper dari berita yang sedang jadi headline dimana-mana. Tentunya dengan kualitas gambar yang sempurna dong. Jika gambar disentuh cukup lama, artikel berita yang menampilkan gambar tersebut akan terbuka dan bisa kita baca.

Kanal berita yang diagregasi oleh Wallmag juga bukan kanal berita kaleng-kaleng.

Wallmag bisa diunduh gratis dari Playstore disini:


Aplikasi satu ini akan menambahkan drawer menu (menu kotak disamping kiri layar) jika disentuh tepian layar bagian kiri. Isi dari drawer menu bisa kita atur, misalkan langsung ke folder foto, tulis catatan, atau ke pengaturan.

SmartDrawer bisa diunduh gratis dari Playstore disini:

How to Install WordPress 5.0 in Raspberry Pi

WordPress 5.0 (or to be exact when this article is published, WordPress 5.0.2) is released as new major version with some big changes like the default editor and new concept for frontend interface of WordPress.

On this tutorial, we will install WordPress 5.0 in Raspberry Pi. I’m using Raspbian as the default operating system for my Raspberry Pi. Make sure, your raspberry pi internet connection is working and FAST. Heuheu

First, you need to update and upgrade to the latest repository and software available by this command:

sudo apt-get update
sudo apt-get upgrade

then we will install the database server with this command:

sudo apt-get install mariadb-server mariadb-client

make sure you remember the root password you’re type in on those wizard. connect to MySQL/MariaDB server with:

mysql -u root -p

create a new database and setup new user:

create database wordpress;


create user 'wordpress'@'localhost' identified by 'password';

#setup the privileges

grant all privileges on 'wordpress'.* to 'wordpress'@'localhost';

flush privileges;

Next step, installing Webserver and PHP by using this command:

sudo apt-get install apache2 libapache2-mod-php5 php5 php5-cli php5-mysqli php5-mbstring php5-gd php5-mcrypt php5-json

test your brand new installed webserver by looking into web browser and pointing out to : http://localhost/

Download the latest WordPress available on and extract it to ‘/var/www/html’

tar -xzvf wordpress.tar.gz -C /var/www/html

and refresh your http://localhost/ URL in your browser, the WordPress installer should be loaded.

Install wordpress, like usual. Write your database username, database password, database name and write your Blog Title.

How to use Custom CSS/Javascript in Android WebView

By default you cannot get custom CSS/Javascript loaded into Android Webview. We should override the onPageFinished method to be able to add custom CSS/javascript to Android Webview.

This example is using Kotlin, you may search something else if you’re using native Java code or Flutter.

The best approach to use Custom CSS/Javascript is by creating the style node containing CSS and a script node containing the javascript for your sites.

var node = document.createElement('style');

node.type = 'text/css';
node.innerHTML = 'MY_CSS_STYLE';



var node = document.createElement('script');

node.type = 'text/javascript';
node.innerHTML = 'MY_JS_SCRIPT';


and override the onPageFinished method:

override fun onPageFinished(view: WebView, url: String) {
    val code = """javascript:(function() { 
        var node = document.createElement('style');

        node.type = 'text/css';
        node.innerHTML = 'body {
            color: white;
            background-color: black;



How to Create Flask Server with Raspberry Pi

On this very basic tutorial, we gonna create a simple Flask Server with Raspberry Pi. Flask is python microframework which allows you to create a web based applications.

This time, we’ll install Flask and using NGINX as the default webserver, altough the similar way can be reproduced using Apache.

Prepare your SD Card and burn the latest Raspbian Image onto the SD card using the tool like ‘Etcher’ or ‘dd’ command in Linux/MacOS.

Power on you raspberry pi, and take a moment, be sure your Raspberry Pi is connected to Internet, through Wi-Fi or LAN. Then update the repository and packages on Raspberry Pi with this command:

sudo apt-get update

Install the required software, like NGINX, pip3 (python installer) and uWSGI (micro-WSGI):

sudo apt-get install nginx
sudo apt-get install python3-pip
sudo pip3 install uwsgi

To install Flask Microframework, use the pip command:

sudo pip3 install flask

Create Flask App and Nginx Configuration

In your home directory, create new directory for flask app example, called ‘flask’. Create new file, called ‘’ with nano containing this example script:

from flask import Flask
app = Flask(__name__)

def index():
  return "<html><body><h1>Test site running under Flask</h1></body></html>"

if __name__ == "__main__":'',debug=True)

then, test your script with uwsgi:

uwsgi --socket --protocol=http -w testSite1:app

you should read this page: Test site running under Flask

Next step, configure uwsgi init file in uwsgi.ini in your flask directory:

[uwsgi]chdir = /home/pi/flasktest
module = testSite1:app

master = true
processes = 1
threads = 2

uid = www-data
gid = www-data

socket = /tmp/flasktest.sock
chmod-socket = 664
vacuum = true

die-on-term = true

Create Autostart uWSGI by create new in /etc/systemd/system, called uwsgi.service

Description=uWSGI Service

ExecStart=/usr/local/bin/uwsgi --ini /home/pi/flask/uwsgi.ini


reload the daemon using sudo systemctl daemon-reload and then start the uwsgi service with systemctl:

sudo systemctl start uwsgi.service

configure NGINX to use uWSGI by editing the default site configuration in /etc/nginx/sites-available/default

Delete all content on those file, and replace with this script:

server {
listen 80;
server_name localhost;

location / { try_files $uri @app; }
location @app {
include uwsgi_params;
uwsgi_pass unix:/tmp/flasktest.sock;

Restart NGINX with sudo systemctl restart nginx command.

Test and look your browser.

How to Create FTP Server with Raspberry Pi

Raspberry Pi revolutionised electronics and computer hobby nearly 6 years. Too many creative project has been created with this tiny computer. On this simple tutorial, we’ll create a simple FTP server with Raspberry Pi.

This tutorial as intended to Raspberry Pi 3 Model B user, but it also practicable to other version of Raspberry Pi with some modification.

You will need:

  • a Raspberry Pi 3 Model B or other version,
  • a SD Card with the latest Raspbian/ARMbian images or other Debian-based distribution for Raspberry Pi
  • Power supply
  • Keyboard or monitor or LCD

Install FTP Server

You must set your IP Address as static IP. To know your ip address, use command like ‘ifconfig’. You also need to enable and start SSH Server for more easy to use in the future.

Install vsftpd using this command:

sudo apt-get update
sudo apt-get install vsftpd

Configure FTP Server

the default FTP server is located in /etc/vsftpd.conf.

Configure and tweak your ftp server by modifying some of those parameters. My suggesstion is enable this parameters, remove the # symbol on every lines that match following parameters:


then add some lines to the end of file:


Save and exit (in Nano you can use Ctrl + O and Ctrl + X

Last but not least, you can create the user FTP directory:

mkdir /home/pi/ftp
mkdir /home/pi/ftp/files
chmod a-w /home/pi/ftp

You can create new user account by using adduser command and create their FTP directory like the above commands.


Ini loh Teknologi di Balik Smart Quran Pen, Maqamat for Kids dkk

Pernahkah sampeyan bertanya teknologi apa yang dipakai di produk-produk Al-Qolam, seperti Smart Quran dengan Pen yang bisa berbicara/bertilawah ketika diarahkan ke ayat tertentu? Atau produk terbaru mereka, Talking Maqamat untuk Anak-anak yang bisa membacakan buku Iqra dengan hanya dengan mengarahkan pen ke kalimah yang dipilih.

Sampean liat dulu video reviewnya ini (bukan Promo, tumbasen dewe nek pengen. karena mahal)

Teknologi di Balik Mushaf Maqamat / Iqra

Konsep teknologi yang dipakai dalam produk-produk diatas di dunia sering disebut dengan Talking Pen. Teknologi talking pen sendiri dibangun dari konsep ‘Machine-readable medium’ atau media yang bisa dibaca mesin. Contoh sederhana yang paling dekat dengan kita sehari-hari misalnya Barcode.

contoh Barcode

Nah, barcode dibaca oleh mesin (entah itu dengan teknologi inframerah, laser atau kamera CMOS) dan dikirimkan hasil bacanya ke mesin yang membutuhkan)

Tentunya yang dipakai oleh Smart Quran atau Talking Pen Maqamat diatas tidak sesederhana barcode dong. Yang dipakai adalah teknologi OID code (Optical ID code) yang dicetak khusus ke buku yang mereka cetak. Kode-kode OID ini bisa diperhatikan dengan tanda titik-titik aneh yang ada disekitar karakter/pointer/ayat yang ada di hamparan kertas pada buku tersebut.

Nah, menurut salah satu perusahaan asal China yang bisa membikinkan kita ‘Talking Pen’ untuk keperluan apa saja, setidaknya ada 4 bagian dari pen yang bisa bicara itu:

  1. Kamera CMOS yang akan menangkap OID Code (ibaratkan komponen ini sebagai Barcode Reader)
  2. Interpreter (penerjemah) dari hasil bacaan OID Code ke Komponen lain (misal muncul folder  X ID suara 001)
  3. MP3 Player yang mengerti terjemahan dari intepreter tadi, sehingga dia akan memutar file mp3 dari folder X dengan ID suara 001).
Gambaran jeroan dari ‘Talking Pen’

Kalau mau pada bikin (ikut-ikutan Al-Qolam) silakan kontak langsung perusahaanya di China. Baca referensi tentang teknologi OID mereka disini.

Di Jerman, ada yang sudah bikin cara untuk menambah dan mencetak sendiri OID Code untuk produk mirip bikinan Al-Qolam, namanya pen ‘Tip Toi’. Toolnya sendiri hasil oprek-oprek banyak orang yang utak-atik Tip-toi, bisa dilihat disini:

Alternatif Quismeen?

Untuk alternatif untuk sobat Qismeen dari puplen pintar diatas, bisa pasangkan Barcode Reader kecil dan baca hasilnya lalu proses dengan memutarkan file MP3 yang sesuai. Cukup dengan Barcode Reader dan Arduino atau Raspberry Pi Zero 😀

Contoh barcode reader kecil: 

Untuk alternatif lainnya, manual mawon Guru Ngaji masih banyak 😀

Cara Install PHP 7.3 di Ubuntu 18.04/18.10

PHP 7.3, versi stable terbaru dari PHP baru saja dirilis minggu kemarin (6 Desember 2018) gan, dan sambutannya sangat positif. Banyak yang mereviu dan melakukan benchmark yang hasilnya sangat positif, bahkan diklaim kecepatan eksekusi framework dan aplikasi PHP mereka berkali-kali lipat dibanding sebelumnya.

Kita gunakan repo PPA yang dibuat oleh om Ondrej Surry. Tersedia untuk edisi Ubuntu 14.04, 16.04, 18.04, dan 18.10 Dengan cara install yang mudah

sudo add-apt-repository ppa:ondrej/php
sudo apt update

kemudian install dengan perintah:

sudo apt install php7.3

atau sesuai kebutuhan seperti

sudo apt install php7.3-cli php7.3-fpm php7.3-bcmath php7.3-curl php7.3-gd php7.3-intl php7.3-json php7.3-mbstring php7.3-mysql php7.3-opcache php7.3-sqlite3 php7.3-xml php7.3-zip

Yuks Upgrade phpMyAdmin sekarang! Ada 3 Bug Berbahaya

Tim pengembang phpMyAdmin kembali mengumumkan rilis terbaru dari aplikasi manajemen database milik mereka, phpMyAdmin. Versi yang dirilis adalah versi 4.8.4 yang merangkum sejumlah perbaikan terhadap 3 bug berbahaya (critical vulnerabilities).

Tiga bug berbahaya yang merupakan critical vulnerabilities ini antara lain:

Local file inclusion

salah satu komponen dari phpMyAdmin bisa dimanfaatkan hacker untuk membaca dan menampilkan file apapun dari server. Hacker terlebih dulu harus menguasai akses ke konfigurasi Storage phpMyAdmin untuk dapat melakukan serangan ini.

Lebih lengkap baca disini


Untuk kesekian kali phpMyAdmin terkena bug Cross-site Request Forgery, dimana hacker dengan cara memanipulasi URL phpMyAdmin tertentu, bisa dengan sangat mudah me-rename database, membuat tabel atau routin SQL baru, menghapus halaman designer, menambahkan atau menghapus user, mengupdate password user tertentu dan mematikan SQL server!

Sangat bahaya. Silakan baca lebih lanjut disini

XSS di menu Navigasi

Yang terakhir Cross-site Scripting yang menimpa salah satu komponen di menu Navigasi (database dan tabel). Dimana dengan kemampuan khusus, hacker bisa menambahkan script Javascript tambahan ke browser pengguna.

Javascript tambahan ini tidak terbatasi besar dan efek payload nya. Lebih lengkap silakan baca

Update Sekarang!

Tidak ada jalan lain gan, silakan update sekarang. Dari berapapun versinya, silakan upgrade ke versi 4.8.4. Lebih amannya, silakan hapus phpMyAdmin dan download source terbaru mereka dari

Download phpMyAdmin versi 4.8.4 disini:

Mengenal PSALM, Tool Analisis Error Script PHP yang Keren!

Sebagai developer PHP, kadang perkara sekecil mengetahui error warning atau error notice di script PHP yang kita bikin, itu bisa terlewat begitu saja. Sehingga biasanya meninggalkan bom waktu untuk jauh-jauh hari di masa depan, ketemu dengan bug yang aneh dan terlupakan 😀

Makanya, sebelum merilis script PHP kita ke tahapan berikutnya, sebaiknya dianalisis dulu. Baik itu menggunakan Unit Testing dengan PHPUnit, ataupun menganalisis kecil-kecilan dengan tool analisis statis. Dalam tutorial ini, kita akan menggunakan tool bikinan Vimeo, yaitu PSALM.

PSALM adalah tool analisis statis untuk PHP. PSALM mampu menjelajah jauh dan mengetahui error remeh-temeh para developer PHP seperti null reference maupun variable yang typo (salah tulis).


Untuk instalasi dari PSALM sendiri sudah mendukung composer gan. Silakan install dengan perintah:

composer require --dev vimeo/psalm

Kemudian langkah keduanya melakukan konfigurasi dengan perintah:

./vendor/bin/psalm --init [folder_source_code_yg_akan_dianalisis] [level]

dimana perintah tersebut akan melakukan analisis ke folder folder_source_code_yg_akan_dianalisis dengan level analisis dari 1-8 (tergantung settingan)

lebih jelasnya silakan simak video berikut gan:

Bug Konyol di Linux, user biasa bisa Jadi Setara Root!?

Anggapan bahwa Linux itu Aman, itu relatif, jangan ditelan mentah-mentah. Kini ada lagi satu bug konyol yang menimpa semua versi Linux yang beredar saat ini. Seorang user biasa bisa mengeksekusi perintah apapun, seperti halnya root!

Bug ini adalah bug di software PolicyKit (atau polkit), sebuah aplikasi low level di hampir semua sistem operasi Unix-like yang mendefinisikan kebijakan akses dan kebijakan kewenangan masing-masing user yang ada disistem. Bug ini diidentifikasi dari CVE nomor 2018-19788. CVE-2018-19788 ini menimpa PolicyKit versi 0.115 yang dipakai disemua distro linux seperti Red Hat dan turunannya, Debian dan turunannya.

Apa Sih Bug Yang Ditemukan?

Ternyata gan, jika sebuah user diberi UID (user ID) yang nilainya lebih dari maksimum nilai sebuah integer di Linux (INT_MAX), maka dia bisa mengeksekusi perintah apapun di Linux. INT_MAX disini kira-kira sekitar 2147483647 atau 0x7FFFFFFF dalam bilangan Heksa.

Jika UID dari user itu lebih dari angka 2147483647, user tersebut akan punya kewenangan yang tidak terbatas karena PolicyKit gagal mengantisipasi kejadian seperti itu.

Seperti yang dijelaskan oleh om 0xm1rch dalam Proof of Conceptnya, dalam exploit yang dia bikin, dia sukses membuat sebuah user dengan UID 4000000000 bisa mengeksekusi apapun. 😀

# PoC for CVE-2018-19788
# Rich Mirch

cat >woot.service<<EOF
ExecStart=/bin/bash -c "echo woot \$(id)|wall"

systemctl link $PWD/woot.service
systemctl start woot

# @paragonsec discovered a much cleaner method to get root. Use this instead
# systemd-run -t /bin/bash


Upgrade lah gan. emang mau ngapain lagi. 

Mengenal Tool ‘Bat’, clone dari Tool ‘cat’ dengan Syntax Highlighting

Salah satu tool wajib yang dikuasai oleh sysadmin Linux diantaranya adalah cat. Perintah cat akan menampilkan isi file di terminal. Biasanya digunakan untuk membaca file konfigurasi maupun file script lainnya.

Nah, jika  cat hanya menampilkan isi teks secara apa adanya, lain lagi tool clone mereka yaitu bat yang menampilkan isi teks lebih cantik dengan syntax highlighting dan line numbers.

Contoh hasil tampilan dari bat

contoh tampilan bat yang menampilkan isi dari file yang berisi syntax Markdown


Untuk instalasinya sendiri, silakan download paket linux (DEB/RPM) maupun source codenya dari laman github mereka gan di, kemudian pilih tab release dan pilih file sesuai distro linux anda.

lebih lengkapnya silakan simak video berikut

Podcast PHP Indonesia – 6 Desember 2018

Pada Podcast PHP Indonesia untuk 6 Desember 2018 ini kita akan membahas:

  • Rilis Laravel 5.7.16
  • Rilis WordPress 5.0 RC3
  • Tutorial seputar cek compatibility plugin dengan Gutenberg/WordPress 5

Library/Class Pilihan:

  • UXDM (
  • Koala Framework (

Jangan lupa SUBSCRIBE dan LIKE video ini.

php #podcastphpindonesia #sisteminformasibiz

Cara Menambahkan Watermark di File Gambar/PDF dengan PHP Watermark

Pada tutorial kali ini kita akan menambahkan watermark berupa teks atau gambar pada file Gambar ataupun file PDF yang kita miliki di server dengan PHP. Untuk library yang kita gunakan kali ini adalah library dari AjaxRay, yaitu PHP Watermark.

Implementasinya sih seperti watermark nama/nomor induk di foto pegawai/mahasiswa/siswa, atau menambahkan watermark ‘LUNAS’ pada PDF kuitansi pembayaran. Continue reading Cara Menambahkan Watermark di File Gambar/PDF dengan PHP Watermark