Desktop Tour

This time I will show you my desktop, it's not perfect but I'm productive with it.

Let's start with a clean workspace

Clean Workspace

As you can see it looks pretty simple, a top bar with the information and a clean desktop. The bar you see on top is i3bar, the content in the bar is provided by a shell script I made.

Fake busy

Fake Busy

As you may noticed I use a tilling window manager, i3. There's a floating window with screenfetch with some details on my configuration.

Reading feeds in the terminal

I live in the terminal and I also like to read my feeds there.

For a long time I used newsbeuter, it was ok, but I didn't like to much and I also wanted to learn how to create nCurses programs, that's why I created simpleRSS.

It's far from finished and certanly far from perfect but it's pretty usable right now.

The feeds can be organized by categories and you can switch through the menus with h,j,k,l just like in vim.

Feeds Screen

Feeds Screen

Set default user and group for new files/directories

Hey guys, today I faced a problem, I wanted my new /var/www files to be owned by www-data user and www-data group, sure I can chown manually every time I create new files, but that wasn't the solution I was looking for.

I think ACL might be a possible solution but I know nothing about that and I needed a fast solution.

The reason

I'm running some bots on a virtual machine, these bots crawl some websites then write the captured content inside /var/www.

You may not want to apply the contents of this article on a production server, the apache user (www-data) should only have read access to the website content, this way if apache or your website have some vulnerability the website content and the server will be more "secure".

Automatically start Virtual Machine and auto-mount

I love Virtual Machines, they are useful and with them you can do whatever you want without cluttering your main system.

I like to keep my main os as simple as possible, if I want some server software I usually create a Virtual Machine for that.

My workflow to start working with web development was something like this:

  1. Open VirtualBox
  2. Start the virtual machine
  3. Mount the /var/www in the Host OS with SSHFS
  4. Open VIM and start working

I had an alias to mount the /var/www directory but that isn't enough, I still had to open VirtualBox, start the virtual machine and I had to keep the Virtual Machine window open.

Converting PDF files to HTML

It's a shame that we don't still have a decent PDF reader in Linux, I was in need of a PDF reader that let me copy and paste without messing all the formatting (the Firefox PDF reader didn't worked well) and I didn't want to install a PDF reader with lots of dependencies, I like things simple, that's why I don't use any Desktop Environment, just i3-wm, simple applications, some scripts I've been made and other scripts that I find online.

I've tried XPDF, it's a decent PDF reader but the copy and paste operation is a little weird.

I was tired of PDF readers and I needed a solution, that's when I found poppler

Fix: wrong colors on Raspberry Pi with i3-wm

I had a Raspberry Pi laying around I today I decided to install Arch Linux on it with a light and simple Window Manager.

I also use i3wm on my laptop so I've used the same configuration with only small changes, reloaded i3wm and surprise:

  • Instead of my gray bar and orange window borders I've got a cyan bar and green window borders!

It was an ugly mess, I found it strange because the terminal colors were fine, the same for GUI apps, only i3 had that weird behavior.

After some research I managed to find a solution, just add this to /boot/config.txt:

Hello World

Hey guys, this is my new Blog, this isn't Wordpress or anything similar, I did it "from scratch" with CodeIgniter for the backend and Bootstrap for the frontend.

The entire website (including portfolio) was build with CodeIgniter, all the fields are dynamic and stored in a MySQL database. The articles are written in markdown (CI-Markdown) and then stored in the database.

The next step will be the integration of a feedback system (probably Disqus) and subsequently building a back-office.

There's a lot of things to be done in this website, such as: