Aplikasi bash imgur.com upload ala snipping tools

Ga kerasa udah jam 11, udah siang banget, mata mulai redup, sambil ngecek installasi Parallels sebelum ketiduran browsing-browsing liat aplikasi Droplr untuk Linux, hmmm… lucu juga keknya… Install, nyoba bentar…. hiks agak kecewa. Karena liat punya temen (yang pake windos) pas selectionnya normal, giliran di Linux pas selectionnya gelap….

Karena ane juga bukan pengguna Droplr, tapi termasuk orang yang butuh upload-upload skrinsut untuk di share. Kepikiran why not create something like this? Kebetulan punya akun di imgur.com, Tinggal grep sana sini dikit, harusnya sih htmlnya imgur bisa diakalin…. Selain itu aplikasi ini memiliki fitur cropping untuk mempermudah mengambil sebagian dari layar komputer dan menjadikannya sebagai screenshot, seperti layaknya aplikasi snipping tools klo di windos, bukan teknik baru, klo biasa pake Linux teknik screenshot cropping ini mah udah ada dari kapan tau kekeke…

Aplikasi ini sangat sederhana, menggunakan bash script, dependensinya juga dikit, cuman butuh curl, zenity, xclip, scrot, notify-send. Secara umum aplikasi ini dapat berjalan di semua X-mode (GUI) paling ada sedikit penyesuaian (zenity bisa diganti dengan Xdialog atau Kdialog). Kebetulan desktop yang digunakan menggunakan mate, forkingannya gnome.

Ya udah, to the point aja, berikut aplikasi bash scriptnya, jangan terlalu berharap macem-macem soalnya cuman kerjaan iseng ngisi waktu, namanya juga skrip 15 menitan jadi kekeke…

Sebelumnya jangan lupa buat file .cred-imgur di folder home. Isinya kurang lebih seperti ini:

USERNAME=nama_login_imgur
PASSWORD=password_login_imgur

Kemudian buat file skrinsut bisa di letakkan di /usr/bin atau mana aja, yang penting jangan lupa dibikin bisa execute, chmod a+x skrinsut.

#!/bin/bash
#
# Skrinsut v0.1
# The screenshot and imgur upload tools by zrth
# ahardiena[at]gmail.com
#
# Note:
# Create .cred-imgur first, add this two line there:
# USERNAME=namauser
# PASSWORD=passworduser
# Dependencies: curl, zenity, xclip, notify-send
# Don't forget to chmod a+x skrinsut ^^

username=$(cat $HOME/.cred-imgur | grep -E -o "USERNAME=(.)*" | cut -f2 -d'=')
password=$(cat $HOME/.cred-imgur | grep -E -o "PASSWORD=(.)*" | cut -f2 -d'=')
lokasi=~/Desktop/
nama="skrinsut-`date "+%d%m%y%H%M%S"`.png"

function Kirim {
curl -d username=$username -d password=$password -c /tmp/cookie.txt -b /tmp/cookie.txt http://api.imgur.com/2/signin
output=`curl -s --write-out "RESULT:%{http_code}:\n" -F "image=@$lokasi$nama" -H "Expect: " -b /tmp/cookie.txt -c /tmp/cookie.txt http://api.imgur.com/2/account/images`
gambar=$(echo $output | grep -E -o "(.)*" | grep -E -o "http://i.imgur.com/[^<]*")
hapus=$(echo $output | grep -E -o "(.)*" | grep -E -o "http://imgur.com/delete/[^<]*")
rm /tmp/cookie.txt
}

scrot -s $lokasi$nama
if zenity --window-icon=$lokasi$nama --title="Capture Success!" --question --text="Upload to imgur.com?\n$nama"; then
	Kirim $lokasi$nama
	notify-send "Saved" "Location: $lokasi$nama"
	notify-send "Saved" "Link: $gambar\nDelete: $hapus\n"
	echo $gambar | xclip -selection c
else
	notify-send "Saved" "Location: $lokasi$nama"
	echo $lokasi$nama | xclip -selection c
fi

Simple kan? Selamat ber-snipping tools ria…. Tidur dulu ah….

A. Hardiena

Teknoblogger, Linux Addict yang juga Pengembang Linux Zencafe, meraih penghargaan dibidang open source oleh Menkominfo M. Nuh dan Menristek Kusmayanto Kadiman. Saat ini berlabuh disalah satu perusahaan media terbesar Indonesia, VIVA.co.id. Hobi wisata kuliner dengan beberapa aktivitas seperti Koordinator IGOS Center, Koordinator Pokja Asosiasi Open Source Indonesia, Pembina Asosiasi Warnet Linux & Open Source Indonesia dan KPLI Bekasi.

Leave a Reply

Your email address will not be published. Required fields are marked *