Jan Peter Alexander Rajagukguk

WordPress 4.9.1 dengan PHP 7.2

WordPress 4.9.1 dengan PHP 7.2

Saya biasanya kalau mau memperbaharui WordPress selalu menunggu versi minor .1 atau lebih. Soalnya, suka ada perilaku tak terduga kalau versi mayor baru terbit. Kali ini, WordPress 4.9.1 sudah terbit.

Menurut situsnya, WordPress merekomendasikan penggunaan PHP 7.2. Saya sendiri baru tahu kalau sudah ada PHP 7.2. Pantas saja WordPress berhenti di versi 4.8.4 pada beberapa peladen.

Saatnya memasang PHP 7.2!

Pemasangan PHP 7.2

Saya pernah membahas tentang PHP 7.1+ di artikel terdahulu. Jadi, ini sekedar mengulang saja.

Aktifkan modul APT untuk mengakses repo berbasis HTTPS dan beberapa paket lainnya.

Aktifkan repo Suri.

Lalu, pasang PHP 7.2 untuk menggantikan PHP 5.

Kalau hanya sekedar php-fpm, yang terpasang bakal versi 7.1. Harus secara eksplisit disebutkan versi 7.2.

Selanjutnya, menyalin konfigurasi fpm dari /etc/php5/fpm/pool.d ke /etc/php/7.2/fpm/pool.d untuk setiap pool.

Saya sejauh ini tidak ada masalah.

Fungsi Yang Mulai Ditinggalkan

Nampaknya PHP7 dan terbaru hendak dibuat menjadi domain yang ketat (strict typecast). Mungkin pengembang PHP ingin menjadikan PHP sebagai bahasa yang lebih aman. Kalau saya melihat log, biasanya akan diprotes bentuk akses senarai (array). Saya mendapati fungsi count() terutama yang paling sering dicatat.

Ada orang-orang yang memutuskan untuk kembali ke PHP 7.1. Tapi saya tidak! Agar sesuai dengan PHP7.2 dan terbaru, misalnya ada variabel:

count($elements[‘#value’])

Diubah dengan menambahkan uji tipe senarai :

Atau, saat diubah menjadi tipe senarai:

Penyebab ini semua kalau saya lihat di kode sumber WordPress adalah biasanya karena penggunaan variabel global.

Untung saja, untuk yang lain pun WordPress dan plugin-nya sudah cukup bersahabat.

Bacaan Lebih Lanjut

Melihat Laporan DMARC

Melihat Laporan DMARC

Dengan semakin ganasnya SPAM dan bisnis surel, Universitas Indonesia pun selalu memperbaharui konfigurasi surel agar selalu aman dan nyaman. Selama inisaya hanya menerapkan SPF, DKIM, ADSP, DMARC dan lain sebagainya ke sub domain UI. Kali ini, untuk domain global UI, DMARC pun diterapkan.

Saya membuka kotak pandora! Ternyata ada domain-domain di bawah UI yang masih perlu dikonfigurasi. Misalnya, untuk domain yang berbasis Google Apps (GMail), saya menerapkan minimum konfigurasi SPF dan DMARC. Namun, ini semua harus ditambahkan satu persatu.

Beruntung, DMARC menyediakan mekanisme laporan berkala yang bisa dipakai oleh UI untuk melihat bagaimana domainnya digunakan ke tempat lain. Laporan DMARC berformat XML. Untuk ini, saya menuliskan cara saya membaca XML tersebut dengan perkakas yang sudah ada.

Saya malas membuat pencacah sendiri. Untungnya, Dave dari TechSneeze menyediakan perkakas kecil untuk itu. Ada dua bagian yang perlu dipasang, pencacah dan pembaca. Berhubung saya tiba-tiba jadi malas menulis, saya percepat saja.

Basisdata

Pencacah ini memasukkan XML ke dalam basisdata. Basisdata MySQL ini digunakan untuk menyimpan hasil proses pelaporan DMARC. Mari buat sebuah basisdata:

Jangan lupa mengganti sandi dengan yang benar!

Pencacah

Pasang paket-paket pendukung.

Unduh dan masuk ke direktori.

Salin berkas dmarcts-report-parser.conf.sample menjadi dmarcts-report-parser.conf yang akan dipakai sebagai konfigurasi. Ubah login MySQL di berkas tersebut.

Sudah bisa digunakan. Cara saya menggunakannya:

Saya suka cara seperti ini. Kalau misalnya semua berkas laporan ditaruh di sebuah direktori, maka tinggal:

Kalau membaca konfigurasi, perkakas ini bisa membaca dari IMAP. Tetapi saya belum mencobanya.

Pembaca

Salin GIT:

Pasang PHP-FPM dan NGINX. Berkas utamanya ada di /var/www/html. Saya terlalu malas untuk mengonfigurasi. Tapi, ini kira-kira konfigurasi saya:

Jangan lupa dmarcts-report-viewer-config.php.sample menjadi dmarcts-report-viewer-config.php dan ubah $dbname, $dbuser, dan $dbpass seperti konfigurasi pencacah.

Silakan diubah sesuai selera. Nanti kalau sudah selesai, bisa dilihat di peramban:

DMARC Report

DMARC Report

Kalau saya tidak sedang sibuk dan malas menulis, saya akan mencoba membagikan bagaimana mengonfigurasi SPF, DKIM, ADSP, DMARC dan lain sebagainya. Kalau ingat, ya…. Tak janji.

Bacaan Lebih Lanjut

Tadinya Tentang Doki-doki Literature Club, Sekarang Tentang Ren’Py
doki-doki literature club, coded with Ren'Py

Tadinya Tentang Doki-doki Literature Club, Sekarang Tentang Ren’Py

Ada sebuah novel interaktif (visual novel) terbaru yang sedang populer saat ini di Internet. Nama novel tersebut adalah Doki-doki Literature Club (DDLC). DDLC merupakan sebuah novel interaktif horor yang menyajikan elemen penembus sekat (breaking 4th wall). Novel ini membuat cerita normal seperti novel pacaran lainnya; sampai satu titik pemain tanpa sadar membuat keputusan yang membuat depresi pemain. Itu sebabnya, permainan ini tidak dianjurkan untuk dimainkan oleh jomblo akut yang memiliki tendensi bunuh diri, dalam depresi, atau dalam masa terapi.

Anda mungkin bertanya, “menembus sekat pada bagian mana?” Saya tidak ingin membuka tabir misteri novel ini. Untuk menikmati novel ini, menurut saya, Anda harus mulai dari situs permainan dan membaca deskripsi perkenalan permainan ini di sana. Lalu, unduh dan mainkan. Anda akan mengerti mengapa deskripsi situsnya membuat permainan ini lebih mengerikan.

Permainan ini dapat diunduh gratis langsung dari situsnya. Anda bisa menyumbang di sana atau langsung ke laman unduhan. Permainan ini menyediakan berbagai tambalan terjemahan yang nampaknya disediakan oleh berbagai orang. Mungkin Anda tertarik untuk menerjemahkan ke dalam Bahasa Indonesia?

Yang menarik, saya menemukan bahwa berkas unduhan untuk GNU/Linux dan Windows menjadi satu. Besar berkas ZIP tersebut sekitar 240MB. Di dalam ZIP terdapat berkas DDLC.exe untuk Windows dan DDLC.sh untuk dijalankan di GNU/Linux.

Untuk menjalankan DDLC di GNU/Linux:

Tentunya cara yang lebih gampang adalah membuka penjelajah berkas Anda; klik kanan untuk ekstraksi; dan klik DDLC.sh untuk menjalankan aplikasi. GNU/Linux tidak seheker zaman dulu.

Ingat! Jangan mainkan bila Anda jomblo akut!

Ren’Py

Saya bukan pengamat permainan. Saya lebih tertarik kepada teknologi yang ada di dalamnya. Ternyata, DDLC menggunakan pustaka Ren’Py sebagai tulang punggung. Ren’Py dikembangkan menggunakan bahasa Python. Pantas saja berkas DDLC untuk Windows dan GNU/Linux digabung. Berkas eksekusi ternyata hanya pembungkus untuk menjalankan skrip Python.

Ren’Py adalah sebuah perkakas pengembangan untuk membuat novel interaktif. Dia diterbitkan sebagai perangkat lunak bebas. Anda bisa memodifikasi sesuai kebutuhan Anda.

Pemasangan Renpy

Ada dua cara pemasangan: melalui berkas unduhan dan melalui distribusi. Karena suatu galat, Ren’Py membutuhkan pemasangan paket Python Tk. Paket ini diperlukan untuk membuat proyek baru. Jadi, untuk kedua metode tersebut, pastikan sudah dipasang:

Setelah itu, aplikasi bisa dijalankan/dipasang seperti biasa.

Unduhan Situs

Anda dapat mengunduh di situsnya. Dengan cara normal, menggunakan penjelajah berkas favorit Anda, Anda dapat mengekstraksi dan menjalankan skrip renpy.sh tanpa perlu membuka terminal.

Ren'Py site's version

Ren’Py interface running from its site distribution.

Tetapi, saya beda! Berikut cara menjalankan:

Atau gunakan cara yang lebih normal.

Paket Distribusi

Pada distribusi Debian 9 (Stretch), Ubuntu 16.04 atau terbaru, dan segala turunannya:

Saya lebih menyarankan cara ini karena semua paket pustaka yang dibutuhkan akan ikut dipasang.

Vanilla Ren'Py installed from Ubuntu.

Vanilla Ren’Py installed from Ubuntu repository.

Versi distribusi menyediakan layar yang lebih bersih karena pemelihara paket membagi Ren’Py menjadi beberapa bagian:

  • python-renpy, paket modul Python Ren’Py.

  • renpy, paket utama untuk memasang Ren’Py

  • renpy-demo, demo-demo yang bisa dijadikan acuan untuk mempelajari Ren’Py.

  • renpy-doc, dokumentasi penggunaan Ren’Py.

  • renpy-thequestion, contoh satu novel interaktif sederhana yang telah dikembang dengan Ren’Py.

Saya hanya memasang renpy dan tidak yang lain. Silakan pasang saja yang lain bila ingin.

Memasang dari Github

Cara lain yang lebih abnormal adalah Anda mengunduh sendiri dari Github dan mengompilasi aplikasi Ren’Py dari kode sumber. Silakan baca sendiri caranya di sana. Saya tidak membahas karena takut tulisan ini jadi kepanjangan.

Sekilas Penggunaan Ren’Py

Saya tertarik membuat aplikasi interaktif sederhana. Ada sedikit kekurangan saat membuat proyek baru. Saya harus membuat sebuah direktori kosong. Sepertinya Ren’Py tidak bisa membuat direktori baru untuk wisaya proyek baru.

Ya, sudah. Toh, membuat direktori baru hanya sejauh klik kanan atau mkdir:

Catatan: tanda ~ artinya direktori rumah (/home/test pada contoh)

Setelah itu, klik + Create New Project

Khusus untuk penggunaan Ren’Py yang pertama kali, kita akan ditanyakan direktori dasar untuk setiap proyek nantinya disimpan.

Project's root directory

First time using Ren’Py we will be asked about its project’s root directory.

Masukkan nama proyek:

New Project name

New Project name. Yeah, I don’t have a naming sense.

Setelah memasukkan nama proyek, tekan tombol ENTER untuk ke layar berikutnya.

Layar berikutnya untuk pemilihan templat bahasa. Sayangnya, templat Bahasa Indonesia saat ini tidak tersedia. Ya, sudah, langsung saja klik Continue.

Select primary language for your new project.

Select primary language for your new project.

Layar berikutnya untuk pemilihan tema awal. Pilih sesuai selera lalu  klik Continue.

Theme selection

Theme selection

Setelah itu, proyek Entah Apa Ini sudah termasuk dalam daftar proyek yang bisa diakses.

Our new project now appeared on the project list.

Our new project now appeared on the project list.

Kalau mau menjalankan aplikasi yang dibuat, klik Launch Project. Menu di sebelah kanan menyediakan apa saja yang bisa dikerjakan pada aplikasi.

Sekilas Utak-atik Proyek Ren’Py

Untuk proyek Entah Apa Ini, saya membuat beberapa perubahan berikut:

  • Mengubah resolusi dari 800×600 menjadi 720p (1280×720). Ada di game/options.rpy dengan opsi config.screen_width dan config.screen_width
  • Membuat direktori gambar dan menaruh semua gambar di sana: game/images
  • Skenario/alur permainan dibuat di game/script.rpy

Saya sudah membuat repositori GIT kalau hendak iseng-iseng mencoba.

Untuk mengunduh:

Untuk menjalankan:

Distribusi

Sayangnya, versi pemaketan Ubuntu 16.04 yang saya gunakan tidak dapat membuat berkas distribusi. Anda harus menjalankan aplikasi Ren’Py yang diunduh dari situsnya. Berikut caranya setelah memuat proyek tersebut.

Hasilnya nanti berupa berkas ZIP yang bisa dijalankan langsung.

Terakhir

Untuk apakah aplikasi ini? Saya melihat potensi selain untuk membuat permainan, Anda bisa membuat semacam kuis interaktif untuk anak kecil sebagai bahan mata ajar. Anda bisa mengubah tata letak sehingga bisa membuat aplikasi ini menjadi ujian langsung.

Selamat berkarya!

Bacaan Lebih Lanjut

Memainkan Shadowverse di GNU/Linux
Shadowverse

Memainkan Shadowverse di GNU/Linux

Sebenarnya tulisan ini bisa terbagi menjadi dua artikel; artikel tentang memasang Steam dan artikel tentang memasang Shadowverse. Mengingat Shadowverse tidak butuh apa-apa, tulisan ini malah hanya terfokus untuk memasang Steam dengan menggunakan WINE versi terbaru. Saya menggunakan KDE Neon, sebuah sistem operasi berbasis Ubuntu 16.04.

Pengaktifan Repositori WINE Terbaru

Untuk WINE versi terbaru, tambahkan PPA WINE dari Ubuntu.

Jangan jalankan pembaharuan repositori dulu. Nanti saja di saat penambahan arsitektur 32-bit.

Pengaktifan Arsitektur 32-bit

Hasil terbaik untuk menjalankan aplikasi Steam dengan WINE didapatkan dengan menjalankannya di arsitektur 32-bit.

Konfigurasi WINE Mode 32-bit

Tetapkan WINE untuk menggunakan arsitektur 32-bit:

Supaya Hayati tidak lelah, taruh baris tersebut pada berkas konfigurasi mula:

Berkas ini akan selalu dijalankan setiap kali BASH/login memulai sesi baru.

Penambahan Arsitektur 32-bit

Tambahkan arsitektur 32-bit sistem operasi Anda bila Anda menggunakan arsitektur 64-bit.

Langkah penambahan arsitektur dilakukan kalau Anda masih memasang arsitektur 64-bit murni. Tidak ada salahnya dijalankan. Jangan lupa juga menjalankan pembaharuan daftar repositori.

Pemasangan S3 Texture Compression

Puji Tuhan negara kita tercinta tidak memiliki hukum paten perangkat lunak seperti beberapa (Uhuk AS uhuk) negara pencilan. Untuk berjaga-jaga siapa tahu sudah terpasang, buang pustaka kompresi tekstur yang lama:

Ini hanya berjaga-jaga saja. Takutnya sudah pernah terpasang untuk aplikasi lain.

Selanjutnya, pasang pustaka tekstur yang tanpa embel-embel.

Sebenarnya Shadowverse tidak S3TC yang aneh-aneh. Satu bagian ini bisa dilewati. Namun, saya pikir mungkin nanti ini dibutuh untuk aplikasi Steam yang lainnya.

Pemasangan WINE

Pasang WINE.

Aplikasi WINE secara aneh terpasang di direktori /opt/wine-staging. Terpaksa harus ditambahkan ke PATH agar bisa dieksekusi.

Jangan lupa menyimpan baris ini agar nanti selalu dijalankan.

Selanjutnya winetricks.

Pemasangan winetricks

Untuk pemasangan Steam yang baik, digunakan perkakas winetricks. Perkakas ini sebenarnya tersedia di repositori Ubuntu. Sayangnya, untuk memasang Steam diperlukan versi terbaru perkakas ini. Mari pasang versi terbaru winetricks:

Saya sengaja menjalankan wget tanpa sudo. Siapa tahu di antara pembaca ada yang menggunakan proksi dengan menggunakan variabel lingkungan.

Pemasangan Steam

Sebelum memasang Steam, pastikan bahwa aplikasi Steam dijalankan oleh WINE dengan mode WinXP. Pada WINE versi terbaru, WINE dijalankan dengan mode Windows 7. Hal ini wajar, sih, mengingat banyak permainan yang membutuhkan minimal sistem operasinya Windows 7.

Mari tandai Steam.

Pasang Steam, namun jangan dijalankan dulu. Pastikan tanda centang untuk menjalankan Steam pada langkah pemasangan terakhir dihilangkan. Steam belum dapat dijalankan karena ada galat pada implementasi WINE. WINE masih belum bisa menjalankan CEF, pustaka Chrome yang menjalankan langsung web di sistem dasar.

Untuk memperbaiki hal tersebut, harus ditambahkan “-no-cef-sandbox” pada saat menjalankan Steam. WINE memasang dua berkas peluncur untuk menjalankan WINE. Satu untuk ditaruh di menu dan satu ditaruh di destop.

Nah, selesai sudah. Jalankan Steam dengan klik ikon Steam di destop/menu. Atau jalankan langsung di terminal:

Selanjutnya tinggal memasang Shadowverse seperti biasa.

Pemasangan Shadowverse

Bisa saja membuka Steam lalu menjelajah Steam Store dan memasang Shadowverse. Atau, jalankan Steam untuk memasang Shadowverse.

Selesai.

Bacaan Lebih Lanjut

Membuat VLOG dengan Perangkat Lunak Bebas dan Terbuka

Saat ini di Indonesia sedang keranjingan membuat VLOG. VLOG adalah jurnal berbentuk video yang diunggah ke Youtube. Bahkan, Pakde Jokowi, Presiden RI, juga memiliki kanal Youtube resmi.

Mengapa saya spesifik menyebutkan hanya Youtube? Mengapa saya tidak menyebut media sosial lainnya? Karena vidio.com jarang yang menonton dan Vimeo masih saja ada yang memblokir. Selain itu, proses komersialisasi video atau lazim yang disebut sebagai monetisasi, hanya disediakan dengan mantap oleh Youtube.

Ahem! Saya sebenarnya mau menyinyir yang lainnya, bukan itu. Saya sedih bahwa banyak artis-artis media sosial yang menyarankan menggunakan perangkat berbayar semisalnya Adobe Premiere Pro. Banyak yang memberikan tutorial menggunakan perkakas ini. Sepertinya mereka banyak yang sanggup membayar Rp269.800,00 per bulan atau Rp3.237.600,00 per tahun.

Hmm…

Menurut saya, ada banyak peralatan yang lebih murah untuk membuat itu.

Perkakas yang Digunakan

Saya menggunakan kamera telepon pintar saya, Xiaomi Mi 6. Berikut spesifikasi saya:

  • Sistem operasi saya Lineage OS 14.1 bentukan 1024 oleh Xiaobai yang didapatkan dari XDA Developer.
  • Aplikasi Legend untuk membuat logo yang menarik. Saya dapatkan dari Playstore.
  • Aplikasi Audio Recorder untuk merekam suara. Saya dapatkan dari F-Droid.
  • Aplikasi kamera Snapdragon PRO M 4.4.0. Saya dapatkan zip pemasangan dari XDA.

Semua aplikasi yang saya sebutkan bisa diganti dengan yang lain. Intinya, semua kebutuhan (OS, kamera, dan aplikasi) sudah bisa dipenuhi dan banyak alternatif yang gratis dan bebas.

Saya memiliki PC dengan memori 32GB dan AMD FX-8350 seperti yang sudah pernah saya bahas sebelum ini. PC ini masih mumpuni. Berikut spesifikasi saya:

  • Sistem operasi saya GNU/Linux KDE Neon 5.11, sebuah distribusi KDE berdasarkan Ubuntu 16.04.
  • Aplikasi Kdenlive untuk menyunting video.
  • Aplikasi Audacity untuk menyunting suara. Aplikasi ini sangat penting untuk memperbaiki bising yang timbul.

Sekarang saatnya membuat video.

Bahan-bahan

Saya menggunakan bahan-bahan sebagai berikut:

  • Berkas intro tanpa suara yang dibuat dari Legend.
  • Berkas ketukan untuk suara intro yang saya rekam sendiri menggunakan Audio Recorder. Saya buat dengan mengetukkan meja.
  • Berkas “Take_You _Home_Tonight.mp3” yang disediakan oleh Youtube untuk bebas diunduh. Kalau penasaran, sumbernya “Take You Home Tonight – Vibe Tracks”.
  • Berkas saya berbicara singkat.
  • Berkas suara saya berbicara singkat.

Membuat Intro (dan Outro Karena Saya Terlalu Malas)

Create logo

Dari Legend, ketik kata yang mau dijadikan logo. Lalu, tekan tanda centang.

Edit Logo

Edit Logo

Sunting animasi logo dan tekan tanda panah ke bawah (ekspor/unduh) untuk memilih mengunduh sebagai video.

Video yang dibuat masih tidak ada suara. Anda dapat membuat suara apa pun, namun perhatikan lisensi lagu/suara yang hendak dijadikan suara latar. Untuk menghindari kerumitan, kali ini saya menggunakan suara yang saya buat sendiri. Selain unik, suara ini pun bebas lisensi dari orang lain. Benar-benar 100% karya sendiri.

Pada Kdenlive, klik Project → Add Clip untuk menambah video animasi dan suara ketukan animasi. Nanti pada Project Bin, video animasi dan suara akan muncul sebagai aset proyek (sebutan untuk mereka klip suara dan klip video). Untuk menggunakan keduanya, drag saja masing-masing ke linimasa (timeline) Video 1 dan Suara 1.

Inilah demarkasi yang membedakan orang jago dan bodoh. Proses membuat suara dan video menjadi sesuai/sinkronisasi. Anda harus pintar untuk menyesuaikan suara dan video (timing). Saya, sih, membuat klip video animasi pada menit 0 dan klip suara mulai dari menit ke-15. Saya juga menambahkan efek Phaser ke klip suara.

Setiap kita punya selera berbeda. Namun, saya sudah memberikan prinsip bagi Anda.

Video Isi

Pada video isi, saya seperti biasa menambahkan aset klip video pembicaraan saya.

Lalu, pada Project Bin, saya klik kanan → Extract Audio → Wav 48000Hz untuk menghasilkan klip suara pembicaraan saya. Pada video asli, suara saya berdesis (noise).

Modifikasi Desis

Buka Audacity dan buka berkas mentahan klip suara. Pada Audacity, drag pada bagian kosong yang biasanya cuma berisi desis.

Drag to get noise sample

Drag to get noise sample

Lalu, pilih Efek → Noise Reduction → Get Noise Profile.

Setelah itu, pilih semua bagian klip suara yang mau dibuang kebisingannya. Saya pilih CTRL + A untuk memilih semua.

Setelah terpilih, klik Efek → Noise Reduction → Get Noise Profile → OK. Ya, silakan ubah-ubah parameter sebelum OK. Saya sendiri hanya mengubah Noise reduction menjadi 15dB.

Buat Diam

Oh, iya, terkadang kita tidak bisa menghindari suara-suara aneh, misalnya di awal ada suara kamera. Drag saja area klip suara yang mau dibuang. Lalu, pilih Buat → Diam… → OK.

Simpan perubahan dengan Berkas → Export Audio.

Sinkronisasi Pembicaraan

Nah, ini yang paling ribet sedunia. Bahkan dunia rekaman profesional pun suka salah. Masukkan klip suara yang sudah dibuat di Audacity sebagai aset proyek.

Saya biasanya membagi klip video menjadi kanal video dan kanal suara. Caranya, dengan klik kanan pada klip di linimasa dan pilih Split Audio.

Buat kanal Audio baru dengan cara klik kanan pada panel label linimasa dan pilih Insert Track.

Drag klip suara ke trek yang baru dibuat. Sesuaikan gambarnya dengan trek audio asli.

Sound edit

Sound edit. Sorry BGM got in the way because recreate for the tutorial.

Seperti pada gambar, saya berusaha menyesuakan suara hasil sunting dengan suara asli. Saya perhatikan gunung-gunung suara. Mohon maaf bila pada gambar tersempil kanal BGM. Cuplikan saya buat setelah produksi untuk keperluan blog ini. Biasanya di atas BGM.

Setelah dirasa sesuai, klik kanan pada kanal Suara Asli dan hapus kanal tersebut. Hal ini agar suara yang digunakan adalah suara yang sudah dibersihkan sebelumnya.

Suara Latar (BGM/Background Music)

Beda jenis isi, beda pula penggunaan BGM. Ada yang sama sekali tak perlu misalnya, bila itu isinya adalah lagu, khotbah, atau diskusi bersama. Namun, suara jangkrik akan terdengar bila saya sendirian berbicara tanpa ada suara apa pun. Biasanya, untuk format santai, gunakan suara latar untuk menambah isi.

Prinsipnya sama seperti waktu kita makan di restoran atau belanja di Mall. Lagu yang dipasang menambah suasana kondusif. Ingat, ya, penambah, bukan untuk mengacaukan. Jadi, pilihlah suara yang sesuai dengan tema isi blog.

Youtube menyediakan aset suara yang bisa diunduh dan digunakan secara bebas. Perhatikan lisensi suara yang hendak digunakan. Biasanya ada lisensi yang memerlukan atribusi (penyantuman nama lagu yang digunakan) dan sebagainya. Saya menggunakan suara yang berlisensi Domain Publik/bebas.

Seperti biasa, masukkan berkas suara tersebut menjadi klip suara di Project → Add Clip. Drag seperti biasa untuk sejajar dengan konten. Atau, bisa agak geser sedikit kalau mau agak nyeni dan sedikit pro.

Ada dua cara untuk menyesuaikan durasi klip suara latar dengan klip konten. Yang pertama, ke ujung klip lalu kecilkan bingkai klip lagu sehingga pas dengan durasi yang dibutuhkan. Cara kedua, klik dua kali pada  klip suara dan klip bisa disesuaikan parameter durasi, mulai muncul pada menit ke berapa, dan berakhir pada menit ke berapa. Saya menggunakan cara pertama, lalu menggunakan cara kedua untuk lebih presisi lagi.

Ingat! Kita mau mendengar suara saya yang lembut dan bersahaja, bukan suara musik. Untuk itu, suara BGM harus dipelankan. Caranya: pilih klip suara, lalu pilih Add Effect → Audio correction → Volume (keyframable). Pada bagian Effects for Take_You_Home_Tonight.mp3, di bagian Volume, saya menurunkan Gain menjadi -17dB. Cara menurunkannya adalah dengan drag di batang Gain.

Setiap klip baik suara mau pun video dapat dibuat efek-efek yang ditumpuk menjadi satu. Namun, untuk saat ini, cukup gunakan efek dasar saja.

Terakhir

Saya pun menambahkan klip video Intro di bagian akhir. Saya memperpanjang durasi klip suara BGM sampai ke bagian akhir klip ini.

Semua proses ini saya kerjakan sekitar sejam lebih. Hal ini karena saya harus mencari-cari aplikasi yang diperlukan dan iseng-iseng mencoba. Menurut saya, kalau memang niat, kumpulkan saja klip-klip yang diperlukan. Dan, apabila sudah terbiasa, paling proses ini hanya 15 menit saja. Apalagi, saya belum menggunakan preset (konfigurasi yang sudah tersimpan dan siap digunakan).

Saya justru menghabiskan waktu untuk mengetik entri blog ini. Ah, saya sudah ditunggu untuk minum kopi bersama. Masih banyak perkakas lain yang bisa dipakai untuk membuat video. Namun, untuk saat ini saya rasa cukuplah untuk membuat video Youtube yang sederhana dan mumpuni. Yang bikin canggih itu  kreativitas, bukan perkakas yang mahal.

May the source be with you.

Memasang Enterprise Single Sign-On – CAS  (Sebelumnya Jasig CAS)

Memasang Enterprise Single Sign-On – CAS (Sebelumnya Jasig CAS)

SSO merupakan sebuah konsep yang sebenarnya digunakan di portal korporasi. Namun, pada perkembangannya, justru organisasi pendidikan tinggi mengadopsinya juga untuk login yang terfederasi. Contoh pengguna SSO yang terfederasi untuk perguruan tinggi adalah eduroam.

Saya mau membuat sebuah solusi SSO menggunakan Jasig CAS. Ada, sih, versi lain seperti SUN CAS, Google Accounts, atau WSO2 Identity Provider. Tapi, saya memilih CAS karena sudah lama digunakan di UI dan saya malas mencari yang lain.

Berhubung tulisan ini panjang, langsung saja saya berikan asumsi berikut:

  • Debian Strecth masih kosong.
  • CAS berdiri sendiri (standalone) dengan Jetty.
  • Sertifikat SSL sudah ditandatangani oleh pihak ketiga.
  • Iman yang teguh.

Langsung saja persiapan sistem.

Persiapan Sistem

Sebelum memasang CAS, persiapkan sistem terlebih dahulu.

Memasang JDK 8

Saya percaya isi lisensi, lebih baik dilewati saja:

Agar dapat memasang sertifikat dari Webupd8, pastikan untuk memasang dirmgr (khusus Stretch):

Tambahkan repo Pemasang Oracle Java.

Pasang Oracle JDK8 dan paket unlimited JCE. Paket JCE berfungsi untuk mengaktifkan fungsi enkripsi yang lebih tinggi dari standar enkripsi yang disediakan oleh Oracle Java.

Selesai untuk Java.

Menyiapkan Direktori yang Perlu

Sayangnya, sebelum CAS terpasang, ada yang harus dipersiapkan. Hal ini karena konfigurasi CAS masih terkode langsung dan tersebar di konfigurasi sehingga lebih baik untuk pemula mengikuti direktori konfigurasi standar.

Yang saya maksud adalah membuat direktori /etc/cas yang dimiliki oleh pengguna. Bisa saja dijalankan sebagai root langsung. Namun, lebih baik Anda berhenti membaca tulisan ini dan cari pekerjaan yang lebih cocok daripada sysadmin.

Penambahan ekstra keamanan sehingga hanya bisa diakses oleh pengguna yang menjalankan CAS.

Memasang Sertifikat SSL

Untuk sertifikat yang ditandatangani sendiri, silakan baca panduan yang sudah disediakan pada Daftar Bacaan. Serius, deh. Pelit sekali Anda untuk bahkan  tidak mau menyediakan waktu untuk membuat sertifikat SSL Let’s Encrypt dengan certbot.

Hal yang perlu dilakukan adalah mengonversi PEM menjadi PKCS12 yang siap untuk diimpor ke dalam format keystore Java.

Ubah format PEM ke format PKCS12. Buat sembarang sandi karena keytool Java (JKS) tidak bisa mengimpor kunci tanpa sandi.

Terakhir, ubah dari PKCS12 ke JKS. Lihat, berkas dan kunci masing-masing saya buat dengan sandi yang berbeda. Jangan lupa disesuaikan pada berkas konfigurasi.

Ubah perizinan berkas thekeystore dan pindahkan ke direktori /etc/cas.

Selanjutnya memasang CAS.

Memasang Overlay CAS

CAS versi terbaru (5.1.x) memecah paket-paket modulnya dalam banyak modul. CAS menggunakan perkakas pembangun Java untuk membungkus dan memaket modul sesuai dengan kebutuh pengguna. Jenis pemaketan tersebut dinamakan overlays. Ada dua jenis yang didukung yakni Maven dan Gradle. Saya memilih Gradle karena Maven lebih gampang dipasang.

Mengunduh Overlay CAS

Unduh dan ekstraksi overlay untuk Gradle:

Mengonfigurasi Overlay CAS

Pada gradle.properties saya mengubah versi Spring Boot ke yang terbaru:

Pada etc/cas/config/application.yml tambahkan:

Pada baris ke-5 etc/cas/config/log4j2.xml ubah direktori log ke standar FHS (/var/log):

Pada cas/build.gradle ubah tomcat menjadi jetty:

Selanjutnya, jalankan perintah berikut untuk membangun paket yang dibutuhkan.

Menjalankan CAS

Berkas yang dihasilkan dari hasil konfigurasi ada di cas/build/libs/cas.war. Berkas ini merupakan sebuah paket aplikasi Web Java yang bisa dijalankan oleh kontainer Servlet apa pun. Namun, untuk keperluan kali ini, jalankan perintah:

Kalau sukses akan muncul di port 8443. Gunakan login casuser dan sandi Mellon untuk masuk.

Berhubung hari sudah subuh, saya berhenti di sini. Nanti selanjutnya tutorial akan lanjut kepada konfigurasi CAS.

Bacaan Lebih Lanjut

Memasang AOSP Extended pada Xiaomi Mi 6
Super Android, recharge!

Memasang AOSP Extended pada Xiaomi Mi 6

Sudah lama saya tak melakukan Jumat ceria. Kali ini saya iseng mengganti sistem operasi perangkat Xiaomi Mi 6 saya dengan sistem operasi baru. Berhubung saya baru saja menulis seri pembahasan kasus Equifax, kali ini saya hendak menyelingkan dengan tulisan hiburan yang lebih ringan.

Memasang AOSP Extended

Saya asumsikan Anda sudah mengunduh bahan-bahan berikut:

Beberapa opsional:

Saya akan mulai pengalaman saya.

Menghapus Sistem Operasi Lama

Pertama-tama, masuk ke mode pemulihan. Hapus partisi sistem, data, dan tembolok. Pastikan Anda sudah membuat salinan hal-hal penting di Google Drive atau sejenisnya. Ingat, tidak perlu menghapus Internal Storage.

Wipe Partitions

Wipe Partitions

Setelah ini, memasang sistem.

Memasang Sistem

Berikut urutan saya memasang sistem:

  1. Memasang Firmware 7.9.7, bukan versi yang lain.
  2. Memasang sistem operasi AOSP Extended.
  3. Memasang GApps.
  4. Memasang Snapdragon Camera Pro

Saya mencoba masuk ke sistem setelah memasang keempat ini. Ternyata, sidik jari tidak terdeteksi. Setelah menyiapkan konfigurasi akun Google dan selesai mengunduh aplikasi, saya pun memulai ulang perangkat saya ke mode Pemulihan kembali. Saya kemudian memasang fix_FPC_Fingerprint.zip untuk membetulkan sidik jari saya. Akhirnya, sidik jari saya pun bisa digunakan.

Memasang Modul Magisk

Ada beberapa modul yang perlu saya pasang untuk menjalankan fungsi.

Universal Safety Net Fix

Magisk and Safety Net status

Magisk and Safety Net status. ctsProfile not detected

Safety Net diperlukan untuk dapat menggunakan Google Pay atau pun beberapa aplikasi lainnya yang membutuhkan jaminan keamanan pada perangkat. Sebelum menggunakan modul ini, ctsProfile tidak terdeteksi. Untuk itu, diperlukan modul ini yang ada di bagian Downloads pada aplikasi Magisk Manager.

F-Droid Privileged Extension

Saya menggunakan F-Droid, sistem pemasang yang memasang perangkat lunak bebas. Perangkat lunak bebas, terutama yang berlisensi GPLv3 ditolak di Google Store. Modul ini diperlukan agar aplikasi yang dipasang oleh F-Droid terpercaya. Modul ini yang ada di bagian Downloads pada aplikasi Magisk Manager.

Xiaomi_Mi6_widefine

Untuk bisa menggunakan aplikasi berbasis DRM macam Netflix dan sejenisnya, kita harus memasang DRM. Salah satu modul DRM adalah Google Widevine. Untuk itu, unduh widevine.zip dan aktifkan di modul Magisk.

Kalau benar, maka DRM akan dipasang dengan baik.

DRM Info

DRM Info

Kamera

Kamera Mi bawaan sepertinya harus diset manual izin yang diperlukan dari konfigurasi agar aplikasi dapat berjalan. Saya sendiri lebih menyukai kamera Snapdragon PRO dari pada kamera Mi. Hasilnya lebih nyata.

Captured with Snapdragon PRO Camera

Captured with Snapdragon PRO Camera

Melawan:

Captured with Mi Camera on AOSP

Captured with Mi Camera on AOSP

Gambar Kamera Mi lebih lembut. Tetapi, saya lebih suka ketajaman Snapdragon PRO. Saya menggunakan aplikasi Snapseed untuk mengubah apa-apa yang perlu.

Aplikasi Pembantu dari Google Apps

Ada beberapa aplikasi pembantu yang saya unduh dari Google Apps yang menurut saya bisa membantu Anda juga.

  • Carrier Services. Semenjak saya pasang ini, koneksi saya ke provider lancar.
  • DRM Info. Untuk melihat apakah ada DRM di perangkat saya.
  • GPS Status & Toolbox. Aplikasi ini bisa diunduh gratis. Namun, saya membelinya agar dapat memiliki versi tanpa iklan dan penuh. Kalibrasi sensor menggunakan aplikasi ini sangat cepat.
  • Snapseed. Aplikasi gratis dari Google ini untuk menyunting gambar.
  • POC KTP. Sekedar iseng membaca e-KTP dan uji coba sensor NFC. Ya, ampun! Segeralah terbitkan spesifikasi akses APDU, ya, pemerintah! Saya juga mau membuat aplikasi yang memanfaatkan data e-KTP.

Demikian.

Bacaan Lebih Lanjut

Belajar dari Equifax: Menerapkan Standarisasi Organisasi yang Berbasis TIK

Belajar dari Equifax: Menerapkan Standarisasi Organisasi yang Berbasis TIK

Equifax ternyata terjebol dari titik celah keamanan Apache Struts. Celah dengan kode CVE-2017-5638 tersebut merupakan celah keamanan yang memungkinkan penyerang mengunggah kode yang dapat menjalankan perintah. Celah ini diumumkan pada 19 Maret 2017.

Untungnya, pengembang Apache telah menambal celah keamanan tersebut pada hari yang sama. Namun, Equifax tidak dapat dengan segera menambal celah tersebut dengan cepat. Bisa jadi, hal ini disebabkan oleh karena penambalan tersebut akan menyebabkan operasi bisnis Equifax terhenti.

Praktik Standar Keamanan Informasi

Tidak akan pernah ada perangkat lunak yang tidak bercacat. Hal ini berlaku baik untuk perangkat lunak bebas/terbuka (FOSS) atau pun perangkat lunak tertutup (proprietary). Untuk itu, diperlukan penerapan prinsip-prinsip penerapan TIK yang benar dalam sebuah organisasi. The Apache Struts Project Management Committee (PMC) memberikan saran mengenai hal tersebut:

  1. Mengerti pustaka perangkat lunak dan versinya apa saja yang digunakan dalam organisasi. Ikuti dan lacak perkembangan untuk setiap perangkat lunak tersebut.
  2. Buat sebuah proses dalam organisasi untuk dapat menambal dengan cepat. Cepat dalam hitungan jam atau beberapa hari, bukan bulan atau pun tahun. Kasus yang ditemui biasanya kasus penjebolan melalui cacat yang sudah diumumkan berbulan/bertahun-tahun sebelumnya.
  3. Setiap perangkat lunak yang kompleks mengandung cacat. Jangan membuat kebijakan keamanan (security policy) berdasarkan asumsi bahwa perangkat lunak yang mendukung itu bebas cacat, terutama kecacatan dalam hal keamanan.
  4. Buat lapisan-lapisan keamanan. Adalah sebuah praktik pengembangan perangkat lunak yang baik untuk melindungi setiap lapisan yang ada di belakang lapisan presentasi seperti Apache Struts. Terjebolnya lapisan presentasi (web) seharusnya tidak menyebabkan akses menyeluruh kepada seluruh data.
  5. Buat pemonitoran yang aktif terhadap Web yang dimiliki. Saat ini sudah banyak solusi baik perangkat lunak terbuka mau pun komersial yang bisa mendeteksi dan memberitahukan adanya pola-pola penyerangan.

Hal ini adalah standar paling dasar yang diterapkan dalam sebuah organisasi. Ada hal-hal lain yang juga perlu diperhatikan selain perangkat lunak dan perangkat keras dalam perusahaan. Keamanan sistem informasi juga berlaku untuk sumber daya manusia dan yang lainnya yang dapat menimbulkan risiko keamanan.

Semua ini sudah ada dalam standar-standar Kebijakan TIK. Ada ITIL, TOGAF 9.1, dan bahkan ISO/IEC 27001:2013. Semuanya bisa dipilih dan diterapkan kepada organisasi. Biasanya, mereka menerapkan level dan roadmap sesuai dengan kebutuhan organisasi.

UI sendiri, walau pun tanpa SK Rektor, telah menerapkan kebijakan keamanan sejak zaman dahulu kala. Misalnya, hal yang paling menyebalkan dan sederhana, mengganti sandi setiap 6 bulan sekali. Kebijakan ini adalah bagian dari Kebijakan Sandi (Password Policy) yang merupakan bagian dari standar Kebijakan TIK. Saking sudah lamanya, semua sistem operasi, baik Microsoft Windows maupun GNU/Linux, sudah memiliki perkakas untuk menerapkan kebijakan pembuatan sandi.

Bukan hanya itu, Badan standar Amerika (NIST) menganjurkan kebijakan cara membuat sandi yang benar dalam NIST SP 800-63B-3. SANS Institute bahkan menawarkan templat dokumen yang dapat digunakan untuk membuat sandi. Sedikit pencarian dapat ditemukan artikel yang memberikan petunjuk kepada pengguna ketika membuat sandi. Pembuatan sandi yang aman itu sendiri masuk dalam ITIL Access Management.

Metrik Pengukuran Penerapan Keamanan Sistem Informasi

Ada prinsip yang selalu saya pegang sejak lama:

Keamanan berbanding terbalik dengan Kenyamanan

Mengakses langsung tentunya jauh lebih cepat dari pada mengakses melalui HTTPS dan memasukkan sandi. Menaruh satpam dan CCTV di depan pintu gerbang menghabiskan banyak duit dibandingkan gerbang terbuka bagi siapa saja. Ya, Anda mungkin mengerti maksud saya.

Memilih titik tengah antara pengamanan dan kenyamanan adalah sebenarnya memilih metrik yang tepat sehingga keamanan dapat dicapai dengan tingkat kenyamanan yang bisa diterima. Beberapa metrik yang sederhana yang saya tahu:

  • Visi dan misi organisasi. Hal fundamental ini yang mendasari semua hal dalam organisasi. Keamanan tentunya juga bagian dari visi dan misi organisasi. Jika terkandung visi tridarma, maka keamanan harus disesuaikan dengan kemudahan menerapkan tridarma. Jika misi mendukung disabilitas, maka keamanan yang diterapkan harus mencakup kaum difabel.
  • Pengalaman Pengguna (User eXperience). Pengalaman pengguna ini justru membuat keamanan itu seakan nyaman. Hal ini karena praktik keamanan yang lumrah di pengguna (kebiasaan) dapat menyebabkan persepsi kenyamanan tinggi bagi pengguna. Bahkan anehnya lagi, jika keamanan itu tidak diterapkan, pengguna malah merasa tidak nyaman. Metrik ini berguna untuk membuat penerapan keamanan yang baik atau pun menerapkan langkah-langkah bertahap untuk mencapai standar keamanan tanpa membuat pengguna terusik.
  • Manajemen Risiko (Risk Management). Manajemen Risiko membuat penilaian tentang risiko-risiko yang mungkin terjadi beserta dengan dampaknya. Saya paling suka dengan dokumen ini karena bila sebuah risiko dapat dikuantifikasi, kita dapat tahu seberapa potensi kerugian organisasi. Dengan menggunakan penilaian ini, kita juga dapat terbantu untuk mengenali titik-titik yang harus dilindungi dalam organisasi dan membuat proses mitigasi sesuai dengan level risiko dan nilai kerugian yang dapat timbul.

Ketiga metrik ini cukup untuk mengukur dan membuat kebijakan keamanan dalam sebuah organisasi. Tentunya, ada beberapa platform seperti ITIL, TOGAF, dan lainnya yang sudah menerapkan titik-titik yang perlu dibuat dan dikelola. Ya, intinya, buatlah sesuai kemampuan dan kepentingan organisasi.

Mohon maaf, saya diajak minum kopi. Mungkin nanti saya lanjutkan lagi. Tulisan ini terlalu panjang sepertinya dan akan saya lanjutkan Nanti bila saya ada waktu℠ 😛

Bacaan Lebih Lanjut

Belajar Dari Kasus Equifax: Privasi, SNI, dan Payung Hukum Terpadu

Belajar Dari Kasus Equifax: Privasi, SNI, dan Payung Hukum Terpadu

Ada 3 perusahaan besar (swasta) di Amerika Serikat (AS) yang mencatat semua transaksi keuangan (kartu kredit, pinjaman, SSN/nomor sosial) warga negara AS. Mereka adalah Equifax, Experian, dan TransUnion. Pada tanggal 7 September 2017, Equifax mengumumkan bahwa datanya telah terjebol. Sebanyak 143 juta rakyat AS, sekitar 44% populasi total AS, terlepas mereka menggunakan Equifax atau tidak, memiliki kemungkinan bahwa identitasnya yang tercuri dapat digunakan untuk melakukan transaksi keuangan.

Ironisnya, menurut Michael Riley, data tersebut justru tercuri dari situs Equifax yang menawarkan produk perlindungan pencurian informasi. Situs tersebut teretas menggunakan kelemahan-kelemahan yang ada untuk mengakses 143 juta data tersebut. Equifax menunggu 6 minggu untuk mengumumkan peretasan tersebut.

Apa yang dilakukan Equifax dalam 6 minggu?

Mereka membuat sebuah laman www.equifaxsecurity2017.com yang dibuat di sebuah penyedia situs umum dengan DNS yang terdaftar secara anonim, bukan atas nama Equifax. Situs ini sepertinya dibuat secara tergesa-gesa sehingga masih ada beberapa data sensitif yang belum dilindungi. Situs ini bahkan sempat ditandai sebagai situs yang mencurigakan. Padahal, situs ini menyediakan layanan kepada rakyat AS apakah data mereka terjebol.

Situs ini mensyaratkan setiap orang yang menggunakan layanan untuk mengetahui datanya terjebol atau tidak harus secara otomatis melepaskan haknya untuk menuntut Equifax untuk hal yang terjadi sebagai syarat penggunaan (Terms of Use). Artinya, semua orang yang akan menggunakan layanan itu akan secara otomatis tidak bisa lagi menuntut kecerobohan Equifax. Namun, Jaksa Umum New York mengatakan bahwa syarat arbitrasi tersebut tidak benar dan meminta Equifax untuk mengubah/menghapus syarat penggunaan tersebut.

Beberapa hari setelah terjebolnya data Equifax, 3 orang eksekutif dalam perusahaan tersebut menjual sahamnya. Mereka berdalih bahwa ini hanya kegiatan yang biasa dan, menurut perusahaan, tidak mengetahui adanya kejadian terjebolnya data sebelum penjualan saham tersebut. Terlepas dari itu semua, para analis pasar modal justru menyarankan yang lain untuk membeli saham Equifax atau menahan diri untuk menjual saham tersebut.

Pelajaran

Banyak orang berasumsi bahwa tidak ada yang perlu ditakutkan bila kita tidak melakukan hal-hal yang salah. Nyatanya, penggunaan data secara ilegal pada era digital justru memerlukan privasi. Privasi bukan hanya mengatur data apa saja yang perlu dilindungi (boleh dibuka/tidak), namun juga mengatur kewajiban apa yang diperlukan untuk sebuah entitas (perusahaan/orang/apa pun) yang memegang info sensitif tersebut. Itu sebabnya, sebuah entitas bisnis diperlukan untuk membuat pernyataan privasi pada banyak negara.

Hal-hal yang dilakukan oleh Equifax ketika terjadi peretasan menandakan bahwa mereka tidak siap. Bahkan, mereka terkesan hendak cuci tangan. Padahal, ISO27001 dan standar keamanan sistem informasi (COBIT, ITIL, TOGAF) lainnya sudah ada.

Apakah standar-standar keamanan organisasi ini wajib diterapkan?

Kalau di Indonesia, sejauh ini saya baru menemukan POJK Nomor 38/POJK.03/2016 mengenai ketentuan bank umum untuk menerapkan standar-standar keamanan sistem informasi. Belum secara spesifik menyebutkan standar apa yang dipakai, misalnya SNI ISO/IEC 27001:2013. Jadi, standar apa pun yang digunakan asalkan disebutkan standar keamanan yang memenuhi kaidah tersebut, bolehlah. Lalu, bagaimana dengan industri telekomunikasi dan lembaga-lembaga lainnya yang non-bank umum?

Anda mungkin percaya kepada entitas yang memegang data Anda. Namun, ketidaktahuan bagaimana cara mereka menyimpannya dapat membuat data Anda tercuri. Alangkah baiknya pada era digitalisasi dan pertukaran data, payung hukum terpadu yang mendukung privasi dan prinsip keamanan dikembangkan. Hal ini dapat memaksa mereka untuk menerapkan standar keamanan yang cukup untuk melindungi data yang sudah dipercayakan.

Mungkin, suatu hari nanti apa bila itu terjadi, penipuan berbasis SMS sudah tidak laku lagi. Amin.

Maaf, ya, karena penjabaran berita Equifax kepanjangan, saya tidak menulis secara lengkap pendapat saya seperti biasanya. Nanti bila saya ada waktu℠ 😛

 

Iseng Menelusuri PesanKita

Iseng Menelusuri PesanKita

Malam ini saya tidak bisa tidur. Iseng melihat lini masa, saya membaca artikel Menkominfo menyarankan menggunakan aplikasi PesanKita sebagai pengganti Telegram. Katanya ada Pak Onno di dalamnya.

Dari penelusuran iseng saya, saya menemukan komentar yang sudah terhapus tentang PesanKita adalah sebuah forking dari aplikasi GPLv3. Saya terlalu malas untuk membuat skrinsut hasil pencarian karena ketika saya mengulang pencarian, hasilnya tulisan itu tidak muncul.

Dari hasil pencarian, saya pun temukan TNISiber/PeSanKita-lib di Github. Berdasarkan keterangan, dia merupakan forking dari libsignal-service-java dari proyek Open Whisper System. Lihat di Github, saya melihat kode untuk server, aplikasi, dan pustaka.

Saya belum terlalu dalam mempelajari sistem ini karena saya sudah mengantuk dan ini cuma iseng. Saya tidak tahu apa yang diubah. Namun, apabila memang ini adalah sebuah aplikasi Open Whisper, bisa dikatakan bahwa benar klaim Pak Menteri bahwa PesanKita memiliki tingkat keamanan enkripsi seperti Telegram.

Saatnya kembali tidur.

Mengaktifkan Camera2 API

MIUI 9 dibuat dari rangka Android 7.1.1 seharusnya memiliki Camera2 API di dalamnya. Sayangnya, MIUI mengaktifkan pustaka HAL 1 bukannya HAL 3 sehingga fungsionalitas Camera2 API dimatikan oleh sistem.

Untuk mengatasi hal tersebut, /system/build.prop harus diubah dan ditambahkan:

Dari pada secara manual dan berisiko merusak sistem, gunakan saja modul Magisk yang dibuat orang.

Memasang Modul Magisk

Karena sebagian dari kalian kemungkinan ada provider malas yang belum membuka akses Reddit, maka saya terpaksa memberikan akses langsung ke berkas.

  1. Unduh magisk-Camera2-API.zip.
  2. Masuk ke Magisk Manager. Klik tombol 3 garis → Modules  → (+) → pilih modul Magisk Camera2 API yang sudah terunduh.
  3. Reboot.

Selesai.

Aplikasi Kamera yang Memanfaatkan

Aplikasi standar MIUI masih berjalan seperti biasa, kecuali modus slow-mo. Namun, sayang rasanya bila Camera2 API tidak dimanfaatkan secara maksimal.

  • Kamera OP5. Saya suka kamera ini simpel. Secara mengejutkan, dia mendukung dual-camera yang ada di MIUI juga! Untuk foto-foto sederhana kamera ini cukup baik. Aplikasi ini ada di XDA Developer.
  • Kamera Google Pixel XL. Format HDR+ yang dihasilkan aplikasi ini luar biasa. Saya anjurkan menggunakan aplikasi ini untuk membuat foto-foto panorama.  Untuk bisa memfoto dengan baik, kamera diubah menjadi mode video terlebih dahulu, baru ubah kembali ke mode kamera. Aplikasi ini ada di XDA Developer.
  • Open Camera. Tampilannya rumit, namun semuanya sangat detail. Saya sejujurnya lebih suka aplikasi ini. Bisa dibuat untuk menyimpan dalam format RAW selain JPEG. Aplikasi ini ada di F-Droid.

Tentu penilaian saya ini masih jauh dari sempurna mengingat saya memasang dan menguji sekilas (first impression).

Bacaan Lebih Lanjut

Memasang TWRP 3.1.1-1 dan Magisk SU
Super Android, recharge!

Memasang TWRP 3.1.1-1 dan Magisk SU

Setelah saya membuka kunci Mi6 dan memasang MIUI 9, saya butuh TWRP dan Magisk. Sayangnya, saya selalu bootloop saat memasang TWRP dan Magisk. Sebelum itu, pada ROM MIUI 8 Global Stable, saya bisa dengan melakukan pemasangan berulang-ulang Magisk. Benar-benar magis pemasangan perkakas ini.

Menurut TheStrix, pengelola TWRP resmi untuk Mi6, ada skrip pada MIUI versi 8+ yang bertugas untuk menulis kembali partisi recovery. Untuk itu, perlu dinonaktifkan. Berikut adalah perjalanan saya memasang TWRP dan Magisk SU.

Persiapan

Unduh:

  1. twrp-3.1.1-1-sagit.img
  2. Magisk-v13.5(1350).zip

sebagai persiapan di PC.

Oh, iya, jangan lupa aktifkan USB Debugging di Mode Pengembang.

Memasang TWRP

Masuk ke Fastboot:

Pasang TWRP:

Masuk ke TWRP:

Masukkan sandi Anda untuk membuka partisi data. Normalnya, partisi data dikunci dengan pola.

Setelah di menu utama, kaitkan (mount) partisi /system:

Non-aktifkan skrip rusuh yang membuat berhari-hari tak bisa tidur memikirkan apa yang salah dengan langkah yang telah dilakukan dahulu.

Sampai langkah ini TWRP selesai dipasang. Selanjutnya, mari memasang Magisk SU.

Memasang Magisk

Versi yang saya pasang saat penulisan adalah versi 13.5 Beta. Versi 13.3 yang terpasang pada MIUI 8 dahulu tidak dapat melewati Safety Net. Safety Net adalah mekanisme Google untuk menguji apakah sistem Android yang ada cukup aman untuk dapat mengaktifkan Google Payment dan fasilitas lainnya yang membutuhkan keamanan.

Taruh ZIP Magisk ke Mi6:

Dari TWRP, pilih Install  lalu pilih berkas Magisk-v13.5(1350).zip yang baru saja ditaruh di /sdcard.

Setelah melakukan pemasangan, jangan lupa hapus Cache/Dalvik Cache.

Mi6 telah di-root dan melewati Safety Net.

Magisk 13.5 Beta passing Safety Net.

Magisk 13.5 Beta passing Safety Net.

Tambahan

Berikut modul-modul Magisk yang saya pasang:

  1. Enable Camera2 API.  Google Camera memiliki kemampuan HDR+ yang memerlukan API Camera2. Mamun sayangnya, MIUI 9 secara baku menggunakan HAL1, bukan HAL3. Modul ini diperlukan untuk mengaktifkan HAL3.
  2. F-Droid Privileged Extension. Saya pengguna F-Droid.
  3. Terminal Emulator Debloater. Saya tidak suka banyak aplikasi bawaan MIUI 9.
  4. Universal SafetyNet Fix. Modul ini membetulkan Mi6 untuk dapat melewati SafetyNet.

Sekian.

Bacaan Lebih Lanjut

Pengalaman Memasang MIUI 9 dari Xiaomi Mi6 Global ROM (unlocked)
Super Android, recharge!

Pengalaman Memasang MIUI 9 dari Xiaomi Mi6 Global ROM (unlocked)

ISI ARTIKEL INI DAPAT MEMBUAT XIAOMI MI6 ANDA RUSAK!

SAYA TIDAK MENGANJURKAN UNTUK MELAKUKAN INI 

DAN SEBAGAI PENULIS TIDAK BERTANGGUNG JAWAB

ATAS APA YANG ANDA LAKUKAN.

Ini sekedar pengalaman saya saja, tolong jangan jadikan tutorial resmi. Untuk bisa melakukan ini, hal-hal yang telah saya persiapkan:

  • Memiliki GNU/Linux KDE Neon (Ubuntu 16.04) yang sudah terpasang fastboot dan adb dengan benar. Artinya, keduanya sudah bisa membaca Android.
  • Xiaomi Mi6 sudah di-unlock secara resmi.
  • USB Debug sudah diaktifkan di mode pengembang.
  • Sudah memasang TWRP 3.1.1-0. Namun, ini tidak penting, karena pemasangan tidak dari recovery, tapi dari fastboot.
  • ROM versi Fastboot dari forum MIUI untuk Mi6. Besar berkas sekitar 2GB (2020MB), jadi silakan ditunggu saja unduhannya. Sengaja tidak saya kasih hotlink, tidak sopan.

Hal yang mau saya capai adalah memasang MIUI 9 tanpa menghapus aplikasi lama.

MASUK KE FASTBOOT

MIUI menyediakan dua versi, Recovery dan Fastboot. Untuk Mi6 yang dari MIUI 8 Global Stable (V8.2.2.0.NCAMIEC), tidak bisa melakukan dari recovery.

  1. Matikan perangkat Mi6.
  2. Setelah mati, tekan tombol Volume Turun + Power. Tahan sampai muncul tampilan Fastboot.
  3. Terakhir, hubungkan perangkat Mi6 ke PC/Laptop. Saya sarankan dengan laptop, sih. Supaya catu daya stabil dan gangguan listrik padam minim. Takut gagal di tengah jalan dan perangkat jadi bata.

Pasang MIUI 9

Paket MIUI yang kita unduh itu sebenarnya berkas TAR yang membungkus semua berkas IMG dan skrip pasang. Bongkar dan masuk ke direktori:

Jalankan skrip flash_all_except_storage.sh. Saya pilih skrip ini karena saya tidak mau konfigurasi dan aplikasi yang telah saya pasang hilang.

Proses ini memakan waktu sekitar 50 detik. Setelah selesai dengan sempurna, skrip akan memulai ulang perangkat Mi6.

Selesai.

MIUI 9 Global Beta

MIUI 9 Global Beta

Aplikasi saya tidak terhapus, namun saya tidak lagi ter-root. Perangkat jauh lebih enteng dan cair. Ya, berhubung setelah memasang saya langsung menulis ini, saya belum menjelajahi lebih lanjut. Namun, sejauh ini, sih, saya senang.

Bacaan Lebih Lanjut

Pasang Zabbix 3.2 di Debian Jessie

Pasang Zabbix 3.2 di Debian Jessie

Pasang repositori resmi Zabbix 3.2 untuk Debian Jessie

Pasang peladen Zabbix dan antarmuka webnya:

Peladen Zabbix

Buat basisdata PostgreSQL untuk digunakan Zabbix dengan sedikit sentuhan nama yang cukup kreatif (menurut saya, kayaknya).

Buat skema Zabbix di basisdata yang sudah dibuat:

Setelah itu, jangan lupa sesuaikan konfigurasi peladen Zabbix (/etc/zabbix/zabbix_server.conf) dengan login PostgreSQL yang sudah dibuat. Cari baris-baris yang berisi hal berikut dan ganti. Sandinya tentu saja ubah, ya, sesuai dengan sandi yang sudah dibuat sebelumnya. Saya menggunakan pwgen untuk membuat sandi.

Setelah itu, jalankan ulang peladen Zabbix agar menggunakan konfigurasi yang sudah diubah:

Peladen Antarmuka Web Zabbix

Ubah konfigurasi /etc/zabbix/apache.conf untuk menambahkan Timezone. Kebetulan saya di Asia/Jakarta (GMT+7).

Jalankan ulang Apache2.

Buka peladen dan arahkan ke http://<alamat.server.zabbix.anda>/zabbix

Konfigurasi Web Zabbix

Klik Next step terus sampai konfigurasi basisdata dan isi sesuai yang diset tadi.

Zabbix Web configuring database backend.

Lalu klik Next step. Masukkan nama Zabbix Anda kalau mau.

zabbix detail name

Zabbix detail name

Pencet terus Next step sampai Finish.

Selesai.

Admin awal loginnya: Admin dan sandinya zabbix bila ingin masuk.

 

 

Bacaan Lebih Lanjut

#TeamElonMusk
Super Android, recharge!

#TeamElonMusk

Mark Zuckerberg dan Elon Musk berselisih pendapat mengenai keberadaan kecerdasan buatan (Artificial Intelligence/A.I.). Perselisihan dimulai dari Elon Musk yang menginginkan agar pemerintahan seluruh dunia segera bersatu membuat aturan yang mengatur kecerdasan buatan. Kemudian, melalui Facebook Live, Zuckerberg membantah Elon Musk dan mengatakan bahwa kecerdasan buatan sangat membantu dan berharap bahwa 10 tahun mendatang kecerdasan buatan dapat menolong memperbaiki kehidupan manusia. Elon Musk merupakan bagian dari penanda tangan surat terbuka yang dibuat tahun 2015 untuk meminta pengembangan kecerdasan buatan yang bertanggung jawab.

Kata-kata Mereka

Agar elok, mari kita bandingkan perkataan mereka mengenai kecerdasan buatan agar lebih mudah membahas apa sebenarnya yang menjadi masalah.

Perkataan Elon Musk

Berikut apa yang dikatakan oleh Elon Musk:

“Normally the way regulations are set up is a whole bunch of bad things happen, there’s a public outcry and then after many years the regulatory agencies set up to regulate that industry. That in the past has been bad but not something that represented a fundamental risk to the existence of civilisation. AI is a fundamental risk to the existence of civilisation in a way that car accidents, aeroplane crashes, faulty drugs or bad food were not. They were harmful to a set of individuals but they were not harmful to society as a whole.”

Menurut Musk, normalnya regulasi dibuat setelah terjadi pertentangan di publik yang memaksa sesuatu untuk diregulasi. Hal ini karena risiko yang dapat timbul tidak mengancam keberadaan peradaban manusia. [Sedangkan] Kecerdasan Buatan adalah ancaman yang mengancam peradaban yang mana berbeda [tingkat ancamannya] dengan kecelakaan mobil, kecelakaan pesawat, obat-obatan terlarang,  atau makanan yang buruk. Semuanya itu berbahaya kepada beberapa individu, tetapi mereka tidak berbahaya kepada masyarakat secara keseluruhan [seperti kecerdasan buatan].

Elon Musk mencemaskan kecerdasan buatan yang dapat mengancam keberadaan peradaban manusia.

Perkataan Zuckerberg

Berikut yang dikatakan oleh Zuckerberg:

I have pretty strong opinions on this. I am optimistic. I think you can build things and the world gets better. But with AI especially, I am really optimistic. And I think people who are naysayers and try to drum up these doomsday scenarios—I just, I don’t understand it. It’s really negative and in some ways I actually think it is pretty irresponsible In the next five to 10 years, AI is going to deliver so many improvements in the quality of our lives… Whenever I hear people saying AI is going to hurt people in the future, I think, “yeah, you know, technology can generally always be used for good and bad, and you need to be careful about how you build it, and you need to be careful about what you build and how it is going to be used.” But people who are arguing for slowing down the process of building AI, I just find that really questionable. I have a hard time wrapping my head around that.

Zuckerberg berpendapat bahwa kita dapat membangun banyak hal untuk membuat dunia yang lebih baik. Tentang kecerdasan buatan, dia optimis dan tidak mengerti mengapa ada orang-orang yang menentang dengan alasan penyebab kiamat. Padahal, dalam waktu 10 tahun, kecerdasan buatan dapat meningkatkan kualitas hidup kita. Memang, semua teknologi bisa digunakan untuk kebaikan atau kejahatan dan kita harus berhati-hati dalam menggunakan teknologi. Untuk orang-orang yang berargumen untuk memperlama proses pembuatan kecerdasan buatan, Zuckerberg mempertanyakan pendapat tersebut.

Zuckerberg berpendapat bahwa kecerdasan buatan hanyalah sebuah teknologi sama seperti teknologi lainnya. Ia dapat digunakan untuk kebaikan atau keburukan. Sehingga, memperlambat pengembangannya adalah hal yang tidak masuk akal.

Kecerdasan Buatan yang Dimaksud

Apa, sih, yang mereka perdebatkan?

Dari segi tingkat kecerdasan, ada tiga jenis kecerdasan buatan:

  • Kecerdasan Buatan Lemah, Weak A.I./Artificial Narrow Intelligence (ANI). Sistem kecerdasan buatan yang dibuat untuk menyelesaikan satu area permasalahan saja. Misalnya, kecerdasan buatan yang dibuat untuk bermain catur.
  • Kecerdasan Buatan Umum, Artificial General Intelligence (AGI). Sistem kecerdasan buatan yang dibuat untuk mereplikasi pikiran manusia.
  • Kecerdasan Buatan Super, Artificial Superintelligence (ASI). Sistem kecerdasan buatan yang memiliki kemampuan berpikir jauh lebih pintar dari manusia.

Hal yang ditakutkan oleh Elon Musk adalah kecerdasan buatan umum (AGI) yang saat ini sedang dikembangkan. Ada dua sifat yang menjadi ancaman membuat kecerdasan buatan ini menakutkan:

  1. AGI memiliki kemampuan untuk berkomunikasi dengan bahasa yang tidak dimengerti oleh manusia. Hal ini membuat penyeliaan menjadi proses yang rumit bahkan mustahil.
  2. AGI memiliki kemampuan untuk memperbaiki algoritma untuk mencapai tujuan. Perbaikan tanpa penyeliaan manusia dapat menghasilkan keputusan yang tidak dapat dicegah.

Intinya, ketika pengembangan kecerdasan buatan tanpa penyelia tercapai masalah dapat muncul. Arah algoritma yang tak terduga dapat membuat algoritma kecerdasan buatan menjadi jahat (rogue). Itu sebabnya, ada usaha seperti Google yang berusaha mengembangkan kecerdasan buatan yang tidak curang.

Ancaman Nyata Saat Ini

Hal yang paling berpengaruh dalam kecerdasan buatan adalah otomatisasi. Otomatisasi meningkatkan efisiensi yang dapat menurunkan biaya produksi. Lengan-lengan robotika dan mesin yang diatur secara canggih menghasilkan paket produk secara cepat.

Sayangnya, keberadaan otomatisasi menghilangkan kebutuhan industri akan pekerja (manusia). Otomatisasi menghilangkan banyak pekerjaan yang tersedia bagi manusia. Mereka tergantikan oleh mesin yang lebih efisien dan anti mogok kerja.

Zuckerberg tidaklah 100% melawan Musk. Seperti Elon Musk, dia menyetujui juga pentingnya pendapatan dasar universal (universal basic income, UBI). Pendapatan dasar universal adalah bantuan tunai langsung yang diberikan oleh pemerintah kepada masyarakat akibat adanya otomatisasi industri yang menggantikan pekerja. Sebagai contoh, Pemerintah Alaska menerapkan kebijakan Permanent Fund Dividend (PFD) yang memberikan uang rata-rata senilai US$1.000,00 per kepala.

Pemerintahan SBY pernah mencoba melakukan program UBI melalui Bantuan Langsung Tunai (BLT). Penyebabnya bukanlah otomatisasi industri, tetapi inflasi yang berlebihan. Namun, karena data penduduk yang digunakan adalah data lama, maka BLT berlangsung gagal dan mendapat kecaman. Timbul konflik di beberapa daerah akibat adanya BLT. Selain itu, persepsi masyarakat merasa bahwa BLT membebankan APBN. Waktu yang terbatas pun menjadikan BLT menjadi tidak tepat guna karena belum sempat efektif implementasinya.

Padahal, menurut Evans dan Popova dalam penelitian mereka di Kenya, justru tingkat penggunaan uang dari BLT sangat baik. Ketika wanita menjadi pemegang keuangan, alkohol dan rokok justru tidak terbeli. Mereka fokus untuk pemenuhan rumah tangga. Mungkin, itulah sebabnya Jokowi/Ahok menggunakan variasi BLT dalam KJP untuk dapat menaikkan standar hidup mereka sekaligus memberikan kepercayaan kepada masyarakat bahwa uang yang diberikan tidak untuk disia-siakan.

UBI bisa jadi solusi jangka panjang untuk hilangnya lapangan pekerjaan. Ada tantangan yang akan dihadapi ketika ini diterapkan di Indonesia. Pendataan penduduk yang akurat dan waktu untuk menerapkan yang cukup lama. Selain itu, pemerintah memiliki tugas untuk meyakinkan masyarakat yang masih memiliki lapangan pekerjaan bahwa tidak apa untuk memberikan gratis uang kepada mereka yang pekerjaannya terhilang.

Saya belum yakin kalau Indonesia akan bisa menganggap mereka yang menganggur sebagai penyebab hilangnya lapangan pekerjaan. Jangan-jangan, saat otomatisasi tiba, kita akan mengira bahwa mereka hanyalah orang-orang yang malas. Bahkan, kita tidak lagi mengganggap mereka adalah orang-orang yang kesempatannya telah hilang, tetapi lebih rendah dari itu.

Itulah makanya, saya setuju bahwa pencapaian teknologi perlu diimbangi dengan kajian yang mendalam mengenai dampak sosial yang akan muncul. Tidak untuk mencegah kemajuan, namun untuk sebuah kemanusiaan yang masih bebas dan merdeka.

Pemasangan Oneplus 5: Bagian 2
Super Android, recharge!

Pemasangan Oneplus 5: Bagian 2

Pada bagian ini saya hendak menceritakan beberapa perkakas yang saya pasang untuk membantu saya.

Komponen Google

Ingat bahwa saya menghapus banyak aplikasi standar OOS? (Debloated)

Nampaknya, ada beberapa komponen Google yang harus ada supaya aplikasi dan penggunaan Oneplus maksimal.

  • Google. Nampaknya peluncur Oneplus dan komponen lainnya mengambil data dari API Google. Jadi, aplikasi ini terpasang secara baku.
  • GBoard. Saya suka dengan susunan tombol dari Google Keyboard.
  • GMail. Untuk mengakses surel yang diperlukan untuk spamming daftar ke banyak situs.
  • Google Calendar. Pengingat ulang tahun nomor wahid. Bisa rusak hubungan tanpa ini.
  • Google Drive. Setidaknya bisa melihat dokumen dengan ini.
  • Google Play Games. Mobile Legends menggunakan ini untuk menyimpan data. Apa? Anda pikir saya terlalu serius?
  • Google Text-to-speech (TTS). Penyedia NLP de facto di Android. Saya malas memasang yang alternatif. Teknologi TTS dibutuhkan untuk aplikasi yang menyebutkan sesuatu seperti nama jalan. Aplikasi Here MAPS yang saya gunakan butuh ini.
  • Snapseed. Untuk menjadi (mengemulasi diri seperti) anak gaul perlu banyak efek kamera yang komprehensif. Didukung dengan kamera yang prima, Snapseed menjadi perkakas utama untuk tampil prima di media sosial.

Komponen Magisk

Magisk adalah sebuah proyek baru yang mengimplementasi supersu, fungsi rooting di Android. Berikut adalah modul tambahan yang saya masukkan untuk membuat Oneplus 5 saya lebih berwarna:

  • Busybox for Android NDK. Seperti Google, aplikasi wajib.
  • F-Droid Privileged Extension. Aplikasi market yang memasang aplikasi FOSS.
  • Sony Music app Magisk Module. Saya pecinta Sony Ericsson dari zaman Z600 sampai terakhir Xperia Mini Pro. Berhubung tidak ada aplikasi musik pada ROM yang saya pasang, saya memilih aplikasi ini. Keunggulan dia adalah bisa memilih dari direktori atau pustaka. Plus, bisa mencari gambar album. Terakhir, menaruh lagu/album ke playlist.

Demikian.

 

 

Pemasangan Oneplus 5: Bagian 1
Super Android, recharge!

Pemasangan Oneplus 5: Bagian 1

Oneplus 5

Oneplus 5 package

Sebegitu rindunya saya memiliki Oneplus 5 sehingga saya pun terpaksa menelan harga diri dan menerima paket Oneplus 5 dengan bonus Beats. Ingat! Saya tidak menggunakan Beats, jadi jangan hakimi saya!

Paket yang saya beli memberikan saya satu karet pelindung, satu pelindung layar, dan satu Beats. Sayangnya, dari ketiganya hanya karet pelindung yang saya pakai sementara. Sisanya akan teronggok di gudang.

Langkah yang pertama ketika membuka Oneplus 5, seperti versi sebelumnya, saya mengganti ROM pabrikan. Hal ini penting karena ada beberapa fitur yang perlu:

  • AdAway untuk DNS anti iklan.
  • F-Droid untuk penyedia aplikasi GPL v3.
  • Membuang aplikasi yang tak perlu.
  • Deodexed, penjadwal kernel, dan beberapa fitur lainnya.
  • Dan beberapa aplikasi yang tak baik untuk disebut di sini.

Saya sebenarnya lebih suka ROM non-OOS (non-Oxygen OS). Namun, apa daya karena masih baru, ada galat seperti dukungan Bluetooth dan beberapa galat lainnya membuat saya masih berpaling ke ROM berbasis OOS.

Setelah riset beberapa saat, saya memutuskan untuk memilih berikut:

Aktifkan Debug

Dari Settings → About phone, ketuk beberapa kali pada baris Build number untuk mengaktifkan Developer options. Keluar dari About phone akan ada menu baru Developer options.

Aktifkan OEM unlocking untuk memasang ROM pemulihan terkustomisasi, TWRP.

Aktifkan USB Debugging agar dapat dikenali di komputer.

Setelah ini, sambungkan ke komputer. Telepon akan menanyakan apakah komputer dapat dipercaya. Silakan dicentang dan setujui. Bila benar, maka Oneplus akan dikenali:

Selanjutnya memasang BOOT.

Memasang Boot

Nyalakan ulang Oneplus ke mode Fastboot:

Buka segel Oneplus:

Saya asumsikan Anda sudah mengunduh twrp-3.1.1-1-cheeseburger.img di komputer Anda.

Nyalakan ulang dan masuk ke Recovery:

Salah satu kekurangan ketika dibuka kunci, perangkat Oneplus pasti mengaktifkan fungsi semacam menu GRUB sebelum masuk. Ya, tinggal pencet tombol Power, sih, untuk Start kalau tidak sabar menunggu beberapa detik.

Memasang ROM

Ketika di dalam mode Recovery, Anda dapat menggunakan menu-menu TWRP untuk memasang sistem. Tetapi, apa serunya? Saya menggunakan terminal dan TWRP.

Format Partisi Lama

Pada menu TWRP, pilih Wipe → Advanced Wipe

Pilih partisi-partisi berikut untuk dihapus:

  • Dalvik/ART Cache
  • Cache
  • System
  • Data

Sisakan Internal Storage dan USB-OTG. Lalu, Swipe to Wipe

Wipe before install

Tekan tombol kembali tiga kali untuk kembali ke menu utama.

Menaruh Berkas-berkas

Taruh berkas-berkas yang diperlukan ke Oneplus.

ROM

Kernel

Pemasang ROM xXx akan mengenali kernel Adin bila ditaruh pada direktori yang tepat:

Pasang ROM

Untuk memasang, di menu utama ketuk menu Install.

Pilih ZIP ROM xXx yang telah diunggah tadi.

Swipe to confirm Flash

Perhatikan bahwa kita tidak perlu memilih kernel Adin karena akan dideteksi nanti.

xXx Aroma Installer

Pilih Make your individual Selections karena saya suka kebebasan!

Pastikan pilihan berikut tercentang:

Reboot Options:

  • Reboot after Flashing

Root Access:

  • Magisk v13 by topjohnwu

xXx Tweaks:

  • xXx Tweaks Framework
  • Windows Animation Scales

Kernel:

  • Kernel Selection Menu

SDcard Fix:

  • Fix SDcard permissions

Update Radio and Firmware

  • Flash Radio and Firmware

Reset Magisk Repository Image

  • Reset Magisk Image (pastikan ini dipilih supaya bersih)

Ketuk Next untuk ke halaman selanjutnya.

Laman ini laman preferensi. Jadi, silakan saja pilih sesuka hati. Namun, berikut pilihan saya.

Launcher Selection:

  • OnePlus Launcher (saya pilih ini biar terasa rasa Oneplus-nya)

Sound Mods saya tidak pilih satu pun karena semua musik yang saya taruh saya rip dari CD yang saya beli sendiri.  Silakan pilih kedua pilihan yang ada kalau Anda mau.

Debloating:

  • Extreme Debloating

Emojis:

  • Oneplus Stock Emojis 

Ketuk Next untuk ke halaman selanjutnya.

Windows Animation Speeds:

  • Fast Animations (tergantung selera)

Ketuk Next untuk ke halaman selanjutnya.

Kernel Selections:

  • STOCK KERNEL
  • Adin Kernel – by adinkwok

Ketuk Next untuk ke halaman selanjutnya.

Ketuk Next untuk untuk memulai pemasangan sistem.

Bila benar, maka setelah selesai pemasangan, sistem akan dinyalakan ulang dan masuk ke sistem yang baru. Selanjutnya, pemasangan Oneplus seperti biasa.

Repositori Suri untuk PHP 7.1+

Repositori Suri untuk PHP 7.1+

Plessis mengumumkan bahwa dia sudah tidak mau lagi mengelola pemaketan PHP terbaru di Dotdeb. Dia kemudian menyarankan untuk menggunakan repositori dari Sury, seorang pengelola resmi pemaketan PHP dari Debian.

Karena Sury menggunakan HTTPS, jangan lupa pasang dulu transportasi HTTPS untuk APT:

Cara menambahkan:

Selesai. Secara baku, paket PHP yang dipilih adalah 7.1. Namun, Sury menyediakan juga untuk paket PHP 7.0.

Create A Database and Its Owner on PostgreSQL
PostgreSQL database

Create A Database and Its Owner on PostgreSQL

In MySQL, these are the chants:

On PostgreSQL, the chants are:

Very simple actually and Debian by default listen at localhost. Users can connect to its database via port 5432.

Of course, these chants are useful for developing apps. In Production, you should supply a user that can only Read/Write/Update a database. In fact, several frameworks like Laravel could setup another user just to Read the database.

Memasang Laravel dengan SQLite3

Memasang Laravel dengan SQLite3

Saya lupa untuk memasang contoh kalau sudah benar di artikel sebelum ini. Ya, sudah, kalau begitu kita coba saja Laravel dengan SQLite3 sebagai basisdatanya.

Buat Situs Baru

Jalankan perintah berikut:

Tergantung kecepatan koneksi Anda, Anda bisa mandi dulu. Sudah mandi, ‘kan?

Modifikasi Konfigurasi untuk SQLite3

Ubah berkas .env membuat semua variabel dengan awalan DB_ dan tambahkan variabel untuk SQLite.

Buat sebuah basis data baru.

Jalankan migrasi.

Jalankan peladen Laravel. Untuk kesenangan semata, saya menjalankan pada port yang berbeda.

Ya, IP yang aneh itu adalah IP lokal VirtualBox. Saya menggunakan itu agar port-nya dapat diteruskan ke inang. Sehingga, saya bisa mengakses dari peramban saya sendiri.

Kalau benar tampilannya akan seperti berikut:

Laravel first-app.