Buku – A Powerful command-line bookmark manager for Linux

Managing bookmarks is one of the major/important tasks to everyone now a days. Everyone have different requirement and holding bunch of URL’s for their needs and keeping those in bookmarks.

We all knows about bookmarks, usage, and how to do in web browser, especially in GUI mode. What about command-line? Most of us doesn’t know about this awesome utility which used to create bookmarks in command-line.

This utility is very useful for data-center administrator, who doesn’t have the GUI to perform any action. Also some of the NIX guys, knows about it because most of the time they are sticking with command-line instead of GUI.

What is Buku ?

Buku is a powerful Command-line bookmark management utility written in Python3 and SQLite3 which is developed by Arun Prakash Jana. We have already wrote about Googler – Command-line google search is another great utility developed by him.

He developed the own utility called Buku because he didn’t find flexible command-line solution for his requirement when searching (private, portable, merge-able database along with browser integration). He named the utility based on his son’s nick name.

Suggested Read : Googler – Google Search from the command line on Linux

Buku has all the rich features such as add, delete, tag, search, update, etc. When add the URL as a bookmark, it will automatically fetches the title from the web page and stores it along with any additional comments and tags. alternatively we can edit the bookmarks through standard text editor too.

Suggested Read : Best Text based (Command Line) Web Browsers for Linux

It offers multiple search options, including regex and a deep scan mode (particularly for URLs), it can find any bookmark instantly. We can open multiple search results in the browser at once.

Buku Features

  • Lightweight, clean interface
  • Text editor integration
  • Fetch page title, add tags and comments
  • Multiple search modes (e.g. deep , regex )
  • Continuous search at prompt, on the fly mode switch
  • Open bookmarks and search results in browser
  • Import/export in HTML (FF, Chrome compatible) or Markdown
  • Shorten and expand URLs
  • Password protection (manual)
  • Portable, merge-able database to sync between systems
  • Multi threaded full DB refresh
  • Shell completion scripts, man page with examples

How to install Buku in Ubuntu ?

Simply add the following PPA to install Buku in Ubuntu and its derivatives.

$ sudo add-apt-repository ppa:twodopeshaggy/jarun
$ sudo apt-get update
$ sudo apt-get install buku

For Debian

$ wget https://github.com/jarun/Buku/releases/download/v2.9/buku_2.9-1_all.deb
$ sudo dpkg -i buku_2.9-1_all.deb

For Arch Linux

$ yaourt -S buku

Dependencies for Manual installation.

For Ubuntu/Debian

$ sudo apt-get install python3 python3-urllib3 python3-cryptography python3-bs4 python3-requests

For CentOS/RHEL

$ sudo yum install python3 python3-urllib3 python3-cryptography python3-beautifulsoup4 python3-requests

For Fedora

$ sudo dnf install python3 python3-urllib3 python3-cryptography python3-beautifulsoup4 python3-requests

For openSUSE

$ sudo zypper intall python3 python3-urllib3 python3-cryptography python3-beautifulsoup4 python3-requests

Manual installation in Linux

$ git clone https://github.com/jarun/Buku.git
$ cd Buku
$ sudo make install

Buku Usage :

We are going to test/add few example for better understanding.

To add a bookmark, just use --add option with buku command and followed by URL.

$ buku --add https://www.2daygeek.com
DB file is being created at /home/magi/.local/share/buku/bookmarks.db.
You should encrypt it.
1. https://www.2daygeek.com
   > #1 Linux Tips :: Tips and Tricks On Unix | Linux how-to Tutorials | Linux Practical Guides & Examples | cPanel Tutorials - 2daygeek.com

If you want to add your own title, use --title option and followed by title contents with above command.

$ buku --add http://www.magesh.co.in --title My Profile Website
2. http://www.magesh.co.in
   > My Profile Website

To print bookmark list, just use --print option with buku command.

$ buku --print
1. https://www.2daygeek.com
   > #1 Linux Tips :: Tips and Tricks On Unix | Linux how-to Tutorials | Linux Practical Guides & Examples | cPanel Tutorials - 2daygeek.com

2. http://www.magesh.co.in
   > My Profile Website

3. http://www.google.com
   > Google

To remove/delete a bookmark. Get the bookmark id from above output and use --delete option with buku command and followed by ID.

$ buku --delete 3
Index 3 deleted

To update bookmark title, just use --update option with buku command to fetch and update bookmarks title from web.

$ buku --update
Title: [Magesh M Profile Website]
Index 2: updated

Title: [#1 Linux Tips :: Tips and Tricks On Unix | Linux how-to Tutorials | Linux Practical Guides & Examples | cPanel Tutorials - 2daygeek.com]
Index 1: updated

To update particular bookmark title, just use --update option with buku command followed by bookmark ID to fetch and update particular bookmark title from web.

$ buku --update 1
Title: [#1 Linux Tips :: Tips and Tricks On Unix | Linux how-to Tutorials | Linux Practical Guides & Examples | cPanel Tutorials - 2daygeek.com]
Index 1: updated

To import/export bookmarks, just use --import & --export option with buku command and followed by filename.

$ buku --import bookmarks.html
3. place:type=6&sort=14&maxResults=10
   > Recent Tags

4. https://fedoraproject.org/
   > Fedora Project
   + Home of the Fedora Project.

5. https://ask.fedoraproject.org/
   > Ask Fedora: Community Knowledge Base and Support Forum
   + Ask Fedora: Community Knowledge Base and Support Forum.

6. http://fedoramagazine.org/
   > Fedora Magazine
   + News, tips, and interviews about Fedora for everyone.

7. http://planet.fedoraproject.org/
   > Planet Fedora
   + Blogs by Fedora contributors.

8. https://communityblog.fedoraproject.org/
   > Fedora Community Blog
   + Curated news for Fedora contributors.

9. http://forums.fedoraforum.org/
   > Fedora Forum
   + Fedora Forums for community interaction.

10. https://fedoraproject.org/wiki/Join
   > Join the Fedora Project
   + Join the Fedora Project!

11. https://docs.fedoraproject.org/release-notes
   > Release Notes
   + This document provides the release notes for Fedora.

To export bookmarks, just use --export option with buku command and followed by filename.html.

$ buku --export bookmark-21-mar-2017.html
9 exported

To lock/unlok bookmark database, just use --lock & --unlook option with buku command.

$ buku --lock
Password:
Password:
File encrypted

$ buku --unlock
Password:
File decrypted

To delete more then one bookmarks, just use --delete option with buku command and followed by bookmarks ID’s with space.

$ buku -d 10 11
Index 11 deleted
Index 10 deleted

To know more option about Buku, navigate to man page.

$ man buku
or
$ buku --help

About Magesh Maruthamuthu

Love to play with all Linux distribution

View all posts by Magesh Maruthamuthu

4 Comments on “Buku – A Powerful command-line bookmark manager for Linux”

  1. There is a little error.
    After you clone the git repository, the first letter of the directory name is uppercase.

Leave a Reply

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