Mudah Memasang Ruby

Memasang Ruby dengan RVM

posted to Ruby on 23 April 2017

Pada kesempatan kali ini saya ingin berbagi tentang bagaimana saya menggunakan Jekyll sebagai platform blogging saya. Jekyll menggunakan bahasa pemrograman Ruby, dan seperti yang dilansir oleh beberapa teman pemasangan Ruby pada sistem operasi linux dianggap ribet, oleh karena itulah tercipta RVM. Saat ini saya selalu menggunakan ruby dengan RVM.

Memasang RVM dan Ruby

Hal pertama yang perlu kita lakukan sebelum memasang rvm dan ruby adalah melakukan import gpg key, lakukan dengan perintah

$ curl -sSL https://rvm.io/mpapis.asc | gpg2 --import -

Setelah melakukan impor key, kita dapat memasang rvm sekaligus dengan ruby melalui perintah

$ \curl -sSL https://get.rvm.io | bash -s stable --ruby

Proses tersebut akan memakan waktu beberapa saat, tergantung koneksi. Sebelum dapat menggunakan rvm maupun ruby kita perlu memanggil rvm ke environment kita dengan

$ source $HOME/.rvm/scripts/rvm

Atau kita dapat meletakkan perintah tersebut pada berkas .bashrc dengan perintah

$ echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"' >> .bashrc

Untuk memeriksa apakah rvm dan ruby sudah terpasang, anda dapat menggunakan perintah which rvm, jika telah terpasang maka akan mengembalikan path dari instalasi rvm.

Mempercepat Instalasi Gem

Pada dasarnya instalasi gem itu cepat, tapi instalasi gem umumnya menyertakan docs. Padahal kebanyakan dari kita lebih suka membaca docs dari browser dengan koneksi internet. Hal ini menjadikan docs yang terpasang menjadi mubadzir. Untuk itu kita perlu membuat berkas .gemrc pada $HOME dan mengisi dengan baris berikut

gem: --no-rdoc --no-ri

Wekwekwek .. dengan begitu pemasangan gem tidak akan menyertakan docs, hemat bandwidth dan hemat storage.

Menggunakan Rake

Hal berikutnya yang saya suka dari Jekyll adalah kita bisa menggunakan rakefile untuk membuat template post, page, dan hal-hal lainnya. Sebagai contoh, untuk membuat post saya hanya perlu mengetik perintah $ rake post title="Judul" dan sebuah berkas dengan template post jekyll saya pun tercipta. Berikut adalah contoh rakefile yang saya gunakan.

require "rubygems"
require 'rake'
require 'yaml'
require 'time'

SOURCE = "."
CONFIG = {
'version' => "0.3.0",
'themes' => File.join(SOURCE, "_includes", "themes"),
'layouts' => File.join(SOURCE, "_layouts"),
'posts' => File.join(SOURCE, "_posts"),
'post_ext' => "md",
'theme_package_version' => "0.1.0"
}

desc "Begin a new post in #{CONFIG['posts']}"
task :post do
abort("rake aborted: '#{CONFIG['posts']}' directory not found.") unless FileTest.directory?(CONFIG['posts'])
title = ENV["title"] || "new-post"
tags = ENV["tags"] || "[]"
category = ENV["category"] || ""
category = "\"#{category.gsub(/-/,' ')}\"" if !category.empty?
slug = title.downcase.strip.gsub(' ', '-').gsub(/[^\w-]/, '')
begin
    date = (ENV['date'] ? Time.parse(ENV['date']) : Time.now).strftime('%Y-%m-%d')
rescue => e
    puts "Error - date format must be YYYY-MM-DD, please check you typed it correctly!"
    exit -1
end
filename = File.join(CONFIG['posts'], "#{date}-#{slug}.#{CONFIG['post_ext']}")
if File.exist?(filename)
    abort("rake aborted!") if ask("#{filename} already exists. Do you want to overwrite?", ['y', 'n']) == 'n'
end

puts "Creating new post: #{filename}"
open(filename, 'w') do |post|
    post.puts "---"
    post.puts "layout: post"
    post.puts "title: \"#{title.gsub(/-/,' ')}\""
    post.puts 'subtitle: ""'
    post.puts 'description: ""'
    post.puts "category: #{category}"
    post.puts "tags: #{tags}"
    post.puts "---"
    post.puts "
"
end
end

Perlu diingat sebelum menggunakan rake anda harus memasangnya dengan perintah $ gem install rake.


Pair With Me!
Comments? Contact me via Twitter or e-mail.