windows
Oh My Posh dengan Tema Acak
Oct 17, 2023
Biasanya aku menggunakan [Starship](https://starship.rs/) untuk mempercantik terminal baik di Linux maupun Windows. Kali ini aku ingin mencoba menggunakan [Oh My Posh](https://ohmyposh.dev/) karena mempunyai tema yang lumayan banyak. Lebih serunya lagi kita mengaktifkan tema-tema ini secara acak biar terasa selalu baru.
Berikut baris kodenya:
```
theme=$(find "$HOME/.cache/oh-my-posh/themes/" -type f | shuf -n 1)
eval "$(oh-my-posh init bash --config $theme)"
```
Alasan kenapa aku suka ganti-ganti tema ini karena dibuat untuk dicoba.
Beberapa Trik yang Bisa Kalian Lakukan dengan curl
Dec 22, 2023
Jadi `curl` kemaren merayakan [ulang tahunnya yang ke-25](https://daniel.haxx.se/blog/2023/03/20/twenty-five-years-of-curl/). Perintah ini bisa dijalankan baik di Windows maupun Linux. Seringnya, `curl` kugunakan untuk mencari informasi *domain* sebuah situs web. Kelihatan agak sedikit *advanced* tapi sebenarnya ada beberapa hal unik yang bisa kita lakukan dengan program kecil ini.
Berikut beberapa trik yang bisa kalian lakukan dengan memakai `curl`:
### Mencari informasi alamat Internet Protocol (IP)
Untuk mencari alamat IP dan lokasinya, lakukan perintah berikut:
```bash
curl ipinfo.io
```
atau (ganti 127.0.0.1 dengan alamat IP yang ingin kalian cari):
```bash
curl ipinfo.io/127.0.0.1
```
Karena informasinya agak sensitif, hasilnya silakan lihat saja sendiri.
### Mencari informasi sebuah kata
Misalnya kalian ingin mencari informasi arti kata `blog`:
```bash
curl dict.org/d:blog
```
Hasilnya sbb:
```
220 dict.dict.org dictd 1.12.1/rf on Linux 4.19.0-10-amd64 <auth.mime> <[email protected]>
250 ok
150 1 definitions retrieved
151 "blog" wn "WordNet (r) 3.0 (2006)"
blog
n 1: a shared on-line journal where people can post diary
entries about their personal experiences and hobbies;
"postings on a blog are usually in chronological order"
[syn: {web log}, {blog}]
v 1: read, write, or edit a shared on-line journal
.
250 ok [d/m/c = 1/0/31; 0.000r 0.000u 0.000s]
221 bye [d/m/c = 0/0/0; 0.000r 0.000u 0.000s]
```
### Cetak kode QR
Mencetak kode QR agak bisa di-*scan* di perangkat selular:
```bash
curl qrenco.de/https://arsak.web.id/
```
### Melihat prakiraan cuaca
Tinggal menuju ke `wttr.in` diikuti oleh kota tempat kalian tinggal:
```bash
curl wttr.in/Pematangsiantar
```
Hasilnya sbb:
```
Weather report: Pematangsiantar
\ / Partly cloudy
_ /"".-. +29(33) °C
\_( ). → 7 km/h
/(___(__) 10 km
0.0 mm
```
Punya trik yang lain? Lanjut di kolom komentar!
*Catatan: Kalau ada trik yang baru, postingan ini akan diperbaharui.*
Linux Masih Lebih Cepat Walaupun Jalan di Mesin Virtual
Mar 17, 2023
*Ternyata menggunakan Linux di mesin virtual lebih cepat dibandingkan Windows di komputer personal.*
Untuk alasan tertentu, ceritanya aku mulai menggunakan Windows sebagi mesin *development*. Tetapi setelah membandingkan sebuah *project* Laravel yang sedang kukembangkan, ternyata jauh lebih cepat di mesin virtual dengan menggunakan Linux. Karena penasaran, aku coba di 2 sistem operasi yaitu Ubuntu dan Debian. Hasilnya, Windows tertinggal jauh dalam masalah kecepatan.
Untuk konfigurasi *project* tersebut bisa dibilang sama. Basis data menggunakan *mysql* dengan data yang sama. Server menggunakan *nginx* dan perintah *command line* dengan menggunakan *php*. Dua-duanya jalan di *hard disk* yang sama. Bedanya, mesin virtual menggunakan RAM dan CPU lebih kecil. Hasilnya, di Windows bisa memakan waktu sekitar 1-2 detik sedangkan di Linux di bawah 1000 ms.
Di sini, aku lebih memilih menggunakan VirtualBox dibandingkan *Windows Subsystem* untuk Linux (WSL). Setelah beberapa kali mencoba WSL, ternyata terasa berat dan kurang responsif. Penggunaan Docker di Windows pun aku hindarkan karena sepertinya Docker itu lebih maksimal jalannya kalau di Linux.
Menghapus Font yang Terlanjur Terpasang di Windows
Mar 11, 2023
*Kalau jumlahnya sudah mencapai ribuan akan sangat melelahkan!*
Biasanya agak sedikit menyesal memasang semua *font* yang ada di repositori [Google Fonts](https://github.com/google/fonts) karena tidak semuanya sering digunakan bahkan ada banyak yang sama sekali tidak tersentuh. Selain itu, waktu memuat *font*-nya pun terasa sangat berat. Tentu saja ini membuat beberapa program tidak responsif.
Untuk menghapus *font* yang terlanjur terpasang secara manual tidaklah mudah. Selain jumlahnya yang sangat banyak, *font* sistem pun jangan sampai tidak sengaja terhapus.
Cara mengakalinya tentu ada.
Pertama tentu saja dengan mengunduh *font* bawaan, bisa dicari di mesin pencari. Kemudian ekstrak berkas tersebut ke direktori Fonts yang ada di Windows. Untuk bisa melakukan proses ini, sistem operasi Windows harus dimulai dalam mode Command Prompt.
Cara yang kedua dengan membandingkan *font* yang ada dengan *font* yang terpasang. Lebih mudahnya, pasang dulu semua *font* ke direktori *font* lokal, hapus jika ada yang sama. Tentu saja proses ini harus sebagai Administrator.
Mudahnya, berikut skrip tersebut dalam bahasa Python:
```python
#!/bin/python
import os
USER_FONTS_DIR = "C:\\Users\\<Local User>\\AppData\\Local\\Microsoft\\Windows\\Fonts\\"
WINDOWS_FONTS_DIR = "C:\\Windows\\Fonts\\"
def main():
for i in os.listdir(USER_FONTS_DIR):
f = WINDOWS_FONTS_DIR + i
if os.path.exists(f):
try:
print("Deleting " + f + " ...")
os.remove(f)
except:
print("Unable to delete " + f)
else:
print("File not found")
if __name__ == '__main__':
main()
```
Jangan Gunakan Cygwin Git
Feb 17, 2023
Untuk beberapa alasan, sebaiknya tidak menggunakan Git yang ada di paket Cygwin.
Awalnya aku tidak mengerti kenapa sering kali saat melakukan `git pull` mengalami galat di beberapa *project*. Sehingga suata saat aku tidak bisa melalukan proses *upgrade* di [Flutter](http://flutter.dev/) akhirnya paham bahwa aku menggunakan program Git yang salah.
Untuk itu kalian sebaiknya menggunakan [Git](https://git-scm.com/download/win) yang tepat agar terhindar dari *error*. Ternyata tidak semuanya program itu memiliki *behaviour* yang sama.