Sejak memasang "dark" theme, saya cenderung menjadi malas menulis. Untuk sementara, dark theme saya disable dulu yaa. Terima kasih (^_^) (bandithijo, 2024/09/15) ●
Prakata
Mungkin sebagian dari teman-teman ada yang sudah pernah mencicipi distribusi sistem operasi GNU/Linux yang menggunakan SLiM display manager.
Dari informasi yang saya baca pada halaman Arch Wiki/SLiM. Proyek ini sudah ditinggalkan. Rilis paling akhir pada tahun 2013. Website dari proyek inipun sudah tidak ada lagi.
Pada halaman Arch Wiki tersebut juga kita disarankan untuk mempertimbangkan menggunakan Display Manager yang lain. Karena SLiM tidak secara penuh support dengan systemd, termasuk logind sessions.
Mengapa Tertarik dengan SLiM?
Sebenarnya sudah lama mencari-cari pengganti dari LightDM display manager. Saya merasa kurang fleksibel dalam mengkostumisasi sesuai preferensi sendiri. Belum lagi transisi antara verbose mode dari journalctl ke tampilan LightDM tidak begitu smooth.
Sampai beberapa waktu lalu, menemukan halaman pada Slant.co yang membahas What is the best Linux Display Manager?.
Saya agak heran, karena bukan LightDM yang menduduki peringkat no. 1 saat ini (2019/02/28), melainkan SLiM dengan perolehan point sebanyak 92, disusul LightDM sebesar 84.
Dengan selisih yang tidak terlampau jauh, tidak menutup kemungkinan LightDM akan segera menyusul ke peringkat pertama.
Namun, saya tetap ingin mencoba SLiM. Karena rasa penasaran saya atas apa yang membuat SLiM masih menduduki peringkat pertama, padahal telah 5 tahun ditinggalkan.
Kelebihan dan Kekurangan SLiM
Pengecekan Paket
Karena paket SLiM display manager ini termasuk paket yang sudah tidak lagi dimaintain oleh upstream developer, tentunya akan sangat penting untuk mengetahui apakah paket yang akan kita gunakan memiliki bug reports, security reposts, dll.
Pada distribusi Arch Linux, untuk menelusuri sebuah paket sangatlah mudah. Kita hanya perlu mengunjungi archlinux.org/packages. Kemudian, mencari paket bernama slim
.
Beberapa hal yang saya perhatikan adalah:
- Last Updated
- View Changes
- Bug Reports
Berikut ini tampilan dari ketiga hal di atas.
Nah, dengan begini, kita dapat memantau, apakah paket SLiM ini tidak lagi dimaintain di Arch Linux atau memiliki bug.
Kita juga dapat sekalian mengecek apakah paket slim
ini memiliki security issue atau tidak, pada halaman security.archlinux.org.
Untuk teman-teman yang menggunakan distribusi selain Arch atau turunan Arch, silahkan menyesuaikan saja yaa.
Instalasi
Saya tidak merekomendasikan untuk menggunakan SLiM Display Manager.
Apabila terjadi sesuatu yang merugikan teman-teman di kemudian hari, bukan merupakan tanggung jawab saya sebagai penulis.
Tanggung jawab sepenuhnya ada di tangan teman-teman.
Kalau setuju, yuk kita kemon!
Untuk distribusi Arch Linux, sangat saya sarankan memasang paket SLiM menggunakan package manager, dikarenakan alasan di atas. Agar paket yang kita gunakan, adalah paket yang sudah jelas ter-maintained dengan baik.
$ sudo pacman -S slim
Untuk distribusi yang lain, silahkan menyesuaikan.
Konfigurasi
Jalankan Service SLiM
Setelah memasang paket SLiM, kita perlu menjalankan slim.service
.
Dikarenakan kita harus memilih salah satu Display Manager yang digunakan, karena sebelumnya saya menggunakan LightDM Display Manager, saya akan men-disable service dari LightDM terlebih dahulu.
$ sudo systemctl disable lightdm.service
Selanjutnya, baru meng-enable-kan service dari SLiM.
$ sudo systemctl enable slim.service
Sessions
SLiM dapat secara otomatis mendeteksi daftar sessions yang terdapat pada direktori /usr/share/xsessions/
.
Contohnya seperti milik saya. Saya memiliki 3 sessions.
- i3
- dwm
- qtile
/usr/share/xsessions/
.
├── dwm.desktop
├── i3.desktop
└── qtile.desktop
Sejak versi 1.3.6-2, SLiM sudah menyediakan fitur ini.
Untuk konfigurasi “pemilihan session”, saya akan menuliskan dua cara.
- Dapat memilih session pada saat login
- Tidak dapat memilih session pada saat login
Kedua cara di atas, pada dasarnya, kita akan berurusan dengan 2 file.
/etc/slim.conf
~/.xinitrc
Saya mulai dari cara pertama.
Menampilkan Pilihan Session pada saat Login
Edit file /etc/slim.conf
dengan text editor favorit kalian.
$ sudo vim /etc/slim.conf
1
2
3
4
5
6
7
8
9
# ...
# ...
# Set directory that contains the xsessions.
# slim reads xsesion from this directory, and be able to select.
sessiondir /usr/share/xsessions/
# ...
# ...
Perhatikan baris ke-6, pastikan sudah enable (tidak ada tanda # dibagian paling depan).
Bagian inilah yang akan mengaktifkan pilihan session pada saat login.
(Perbaikan dari: Harry Kurn)
Penting! untuk menambahkan baris di bawah ini pada file ~/.xinitrc
.
1
2
3
4
# ...
# ...
exec $1
Tujuannya agar inputan yang dipilih menggunakan F1 akan dieksekusi.
Kita dapat memilih session dengan menekan tombol F1.
Tidak Dapat Memilih Session pada saat Login
Untuk Cara kedua ini, dapat pula kita sebut sebagai automatic session, karena kita tidak memilih session sendiri dengan menekan tombol F1 seperti di atas. Melainkan, kita sudah terlebih dahulu mendefinisikan default session yang akan kita pergunakan.
Edit file /etc/slim.conf
dengan text editor favorit teman-teman.
$ sudo vim /etc/slim.conf
1
2
3
4
5
6
7
8
9
# ...
# ...
# Set directory that contains the xsessions.
# slim reads xsesion from this directory, and be able to select.
#sessiondir /usr/share/xsessions/
# ...
# ...
Perhatikan! pada baris ke-6. Tambahkan tanda pagar #
, untuk mendisable konfigurasi pada baris ini.
Selanjutnya, definisikan default session yang akan kita pergunakan.
Edit file ~/.xinitrc
dengan text editor favorit kalian.
$ vim ~/.xinitrc
Ada dua cara yang saya tawarkan.
Cara Sederhana
1
2
3
4
5
6
7
# ...
# ...
exec i3
#exec dwm
#exec qtile
# ...
# ...
Karena saya menggunakan i3wm sebagai default session saya, maka saya meng-enable-kan dengan menghapus tanda pagar #
, seperti contoh di atas.
Cara Keren
(Perbaikan dari: Harry Kurn)
Cara keren ini sudah tidak direkomendasikan lagi.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# ...
# ...
# Untuk SLiM Session
DEFAULTSESSION=i3
case "$1" in
i3) exec i3 ;;
sway) exec sway ;;
dwm) exec dwm ;;
qtile) exec qtile ;;
bspwm) exec bspwm ;;
*) exec $DEFAULTSESSION ;;
esac
# ...
# ...
DEFAULTSESSION=
.
System Sessions
SLiM juga dapat mengakses system sessions seperti: reboot, shutdown, suspend, exit dan console.
REBOOT | reboot |
<root_password> |
SHUTDOWN | halt |
<root_password> |
SUSPEND | suspend |
<root_password> |
EXIT | exit |
<root_password> |
CONSOLE | consle |
<root_password> |
Untuk mengaktifkan dan menonaktifkan fitur ini, teman-teman dapat melihat pada file /etc/slim.conf
.
1
2
3
4
5
# Commands for halt, login, etc.
halt_cmd /sbin/shutdown -h now
reboot_cmd /sbin/shutdown -r now
console_cmd /usr/bin/xterm -C -fg white -bg black +sb -T "Console login" -e /bin/sh -c "/bin/cat /etc/issue; exec /bin/login"
#suspend_cmd /usr/sbin/suspend
suspend, secara default dalam keadaan tidak aktif.
Instalasi Themes
Instalasi themes pada SLiM display manager termasuk sangat mudah.
Hanya perlu memindahkan atau mengcopy paste direktori themes ke direktori /usr/share/slim/themes
.
Salah satu contoh direktori SLiM themes, biasanya mengandung sedikitnya 3 file.
darky_solarized_dark_yellow
.
├── background.png
├── panel.png
└── slim.theme
Saya menggunakan theme darky_solarized_dark_yellow yang merupakan hasil modifikasi dari darky_pink milik GitHub/adi1090x/slim_themes
Cara instalasi themes sangat mudah.
Secara garis besar proses instalasi dibagi dalam 2 tahap.
- Copy direktori themes ke dalam direktori
/usr/share/slim/themes/
- Merubah nilai dari variabel
current_theme
pada file/etc/slim.conf
Copy Direktori Themes
$ sudo cp -rvf <dir_themes> /usr/share/slim/themes
Sebagai contoh, saya memiliki themes bernama darky_solarized_dark_yellow
.
$ sudo cp -rvf darky_solarized_dark_yellow /usr/share/slim/themes
Kemudian lakukan pengecekan pada direktori /usr/share/slim/themes/
apakah sudah berhasil dicopy.
$ ll /usr/share/slim/themes
drwxr-xr-x root root darky_solarized_dark_yellow
drwxr-xr-x root root default
Nah, kalau sudah ada, berarti sudah terinstall.
Menginisialisasi Nama Themes
Apabila langkah copy direktori themes sudah dilakukan, selanjutnya tinggal mengganti nilai dari variabel current_theme
pada file /etc/slim.conf
yang tadinya bernilai default
menjadi <nama_theme>
.
$ sudo vim /etc/slim.conf
1
2
3
4
5
6
7
8
9
# ...
# ...
# current theme, use comma separated list to specify a set to
# randomly choose from
current_theme darky_solarized_dark_yellow
# ...
# ...
Pesan Penulis
Untuk diperhatikan, SLiM display manager tidak menggunakan ~/.profile
untuk mengambil data-data aplikasi atau PATH apa saja yang harus dijalankan saat sistem startup, melainkan menggunakan ~/.xinitrc
.
Hal tersebut di atas sangat berbeda dengan Display Manager seperti GDM dan LightDM yang mengambil data-data startup applications dan PATH pada ~/.profile
.
Apabila hal ini tidak dikonfigurasi dengan benar, maka akan ada beberapa hal yang tidak berjalan sebagaimana mestinya.
Silahkan merujuk pada .xinitrc milik saya yang berada di GitHub/dotfiles, apabila memang diperlukan.
Sepertinya seperti ini dulu.
Mudah-mudahan dapat bermanfaat buat teman-teman.
Terima kasih.
Terima Kasih
Terima kasih, Bro Harry Kurn.
Referensi
-
wiki.archlinux.org/index.php/SLiM
Diakses tanggal: 2019/02/28 -
github.com/data-modul/slim
Diakses tanggal: 2019/02/28 -
www.slant.co/topics/2053/~best-linux-display-manager
Diakses tanggal: 2019/02/28 -
wiki.archlinux.org/index.php/GNOME/Keyring#Using_the_keyring_outside_GNOME
Diakses tanggal: 2019/02/28
Lisensi
Atribusi-NonKomersial-BerbagiSerupa 4.0 Internasional (CC BY-NC-SA 4.0)
Penulis
My journey kicks off from reading textbooks as a former Medical Student to digging bugs as a Software Engineer – a delightful rollercoaster of career twists. Embracing failure with the grace of a Cat avoiding water, I've seamlessly transitioned from Stethoscope to Keyboard. Armed with ability for learning and adapting faster than a Heart Beat, I'm on a mission to turn Code into a Product.
- Rizqi Nur Assyaufi