Memasang Node.js Teranyar di Debian Sid

Tidak terasa sudah sekitar empat bulan saya mengenal Node.js. Perkenalan singkat tidak disengaja melalui perantara bot Telegram. Kala itu saya sedang mencari cara bagaimana bisa memasang bot Telegram di internet agar bisa selalu daring 24 jam sehari dan 7 hari seminggu. Bukannya tidak sanggup membayar vps (virtual private server), namun cara mendapatkan vps ini agak rumit. Maklum sebagai masyarakat kalangan ekonomi bawah saya tidak memiliki akses ke alat keuangan modern semacam kartu kredit atau paypall.

Mulanya bisa deploy bot sederhana di hook.io, namun kemudian sepertinya karena script yang jelek akhirnya bot tersebut melebihi traffic yang diizinkan dan akhirnya suspended. Entah bagaimana sistem suspend di hook.io karena hingga kini saya tidak kunjung bisa meletakkan bot lagi di sana.
Kemudian menemukan now dan glitch, tapi tidak sampai memasang bot di sana karena akhirnya menemukan bot bertajuk ThorsHammer yang lumayan mudah dipasang di OpenShift. Sebenarnya akun OpenShift ini akun lama waktu masih gratis tanpa syarat. Lama terlupakan sampai akhirnya menemukan bot ThorsHammer ini.
Singkat cerita, saya pun akhirnya menekuni dasar-dasar Node.js agar bisa membuat custom plugins bagi bot.

Namun artikel kali ini bukan akan menceritakan bagaimana membuat bot Telegram menggunakan Node.js, melainkan cara bagaimana memasang Node.js termutakhir di Debian Sid.
Meski Debian layaknya the mothership of all distros, namun beberapa paket dalam repo mereka lumayan tertinggal. Node.js inilah salah satu contohnya. Yang saya baca sih karena perkembangan Node.js lumayan pesat, sementara untuk masuk repo Debian memerlukan review yang tidak mudah, jadinya Node.js yang baru rilis tidak serta-merta bisa masuk repo.

Sayangnya, berkaitan dengan menulis bot ini tidak bisa menggunakan Node.js versi lama. Lebih tepatnya sih karena ketidaktahuan saya tentang Node.js, jadi alih-alih mengutak-atik kode bot agar bisa jalan di Node.js versi lama ya lebih baik menggunakan yang telah ada dan sedikit-sedikit menambah ini-itu.
Jadi, bagaimana kita bisa memasang Node.js teranyar di Debian Sid jika ternyata ia tidak ada dalam repo?
Jangan khawatir. Meski Node.js tidak selalu masuk repo distro-distro yang jumlahnya melebihi jemari tangan, namun ia memberikan dukungan pemasangan untuk beragam distro.

Beberapa cara memang lumayan patut ditanyakan, misalnya curl script | sh sebagaimana ditunjukkan di laman https://nodejs.org/en/download/package-manager.
Nope, I don’t like it. Meski sumbernya terpercaya, namun saya lebih suka mengamalkan good habit, yakni dengan menggunakan repo biasa.

Let’s see how.

  • Tambahkan signing key untuk paket dari NodeSource.
    curl –silent https://deb.nodesource.com/gpgkey/nodesource.gpg.key | sudo apt-key add -
  • Sunting sources.list. Sebenarnya bisa membuat berkas list tersendiri, namun saya lebih suka daftar repo di satu berkas.
    sudo apt edit-sources
  • Tambahkan repo Node.js 8 dari NodeSource.
    deb http://deb.nodesource.com/node_8.x sid main
    deb-src http://deb.nodesource.com/node_8.x sid main
  • Simpan berkas dan lakukan update.
    sudo aptitude update
  • Jika tadinya telah terpasang nodejs maka kita hanya perlu melakukan upgrade.
    sudo aptitude upgrade
  • namun jika belum pernah memasang paket nodejs, maka kita bisa memasangnya dengan menggunakan perintah:
    sudo aptitude install nodejs
  • Untuk npm, lebih baik menggunakan yang sepaket dengan nodejs dari NodeSource daripada npm dari repo. Maklum, versi npm dalam repo juga jadul.

That’s it folks

O ya, repo botnya bisa dilihat di https://github.com/rizaumami/TGramIndoBot.
Untuk demo, silakan kirim pesan ke @tgramindobot.