Tuesday, June 26, 2012

Sublime 2 Soda Theme

Although I use Free Software anywhere and everywhere I can, one piece of non-Free software I have really grown to love is Sublime Text 2. It is simply the best text editor I have ever used, and well worth the ~$60 price tag.

One great thing about Sublime 2 is the fast-growing eco-system of plugins that are cropping up, but although not a plugin exactly, I stumbled across a really awesome theme I wanted to share. It's called the Soda Theme, and it's hosted here on Github. If you happen to use Sublime Text 2, I highly recommend you check it out. It has both a 'dark' and 'light' variant, along w/ syntax highlighting schemes to match each of them. I'm using the 'dark' (because I prefer light text on a dark background) and it melds *perfectly* with the Greybird XFCE GTK and Window Manager theme.

Here is a screenshot:

Since Blogger tends to scale down images, here is a full-resolution version in all it's glory.

If you are interested, I use Inconsolata in 9pt for my font.

The Github page has full instructions on installing the theme. If you've never tried Sublime Text 2, and want to try it out, here is a nice guide for installing on Fedora. I've modified those instructions personally, as I have a folder in my home directory called ~/.bin where I store 'out of repo' or 'extract and run' executables and such, but you should be able to follow what he is saying to get all the proper symlinks and .desktop files set up so it will integrate in your menu system and everything.

--- Edit 06/28/2012---

I had a comment asking to show the difference in the Default theme, vs the Dark Soda theme, so here is a screenshot of the Default:

And just like before, here is a full-resolution version for you.

The biggest (most obvious) difference is the side-bar, but the area around the tabs looks nicer in the Dark Soda theme, and it all integrates w/ the Syntax theme provided.

Saturday, June 23, 2012

Fedora Join Special Interest Group

In order to make it easier for new contributors to get involved in Fedora, a new special interest group (or SIG) has been formed called Fedora Join.

If you are interested in contributing to Fedora, please check out the following resources:

If you already contribute to Fedora in one area and want to help others get involved (or want to get involved in other areas yourself), join the SIG, mailing list and IRC channel to help new contributors become involved. The SIG has a wiki page located here as well.

As a 'new' Fedora user/contributor myself, I think it is awesome that the Fedora community is so committed to making it easy for people to get involved and give back to the community. The Fedora community is very open and welcoming. I'm very happy to be a part of it!

Tuesday, June 19, 2012

Greybird for Chrome

As I'm fairly new to XFCE for day-to-day use, I'm still in the tweaking phase. I really like the Greybird theme, but still not sold on it over Adwaita. Greybird just got a boost though, because I just discovered that there is a Greybird Chrome theme. Looks nice:

Cursor Color in XFCE Terminal

I switched back to using the standard XFCE Terminal from trying out Terminator for a while. One thing that bugged me was it was hard to read text under the green cursor block. Wanting to keep it green, I discovered a color that works quite nicely to improve visibility under the cursor:


Simpy add to the bottom of your ~/.config/Terminal/terminalrc file.

 Here is a screenshot:

Credit goes to this site for helping me find this.

Monday, June 18, 2012

Pimp your bashrc

Although I've been a Linux user for many years, I have only recently started experimenting with, and tweaking my ~/.bashrc file. I guess better late than never...right?

It's still very much a work in progress, but here is what I've come up with so far.

First, my PS1:
PS1='\[\033[1;32m\][\u@\h \[\033[31m\]\W\[\033[34m\]$(__git_ps1 " (%s)")\[\033[1;32m\]]\\$\[\033[m\] '

This was the first tweak I made, and I blogged about it here (and updated the post a few times in the process).

After doing that I started adding aliases, and I've collected a pretty good list so far:

First, I've fixed my most common typo...correcting isntall to install:

##Fix Typos 
alias isntall='install'

Then, I set up a few for SSH connections:

##SSH Connections 
alias server='ssh server -l jaysonr' 
alias railsvm='ssh railsdev-vm -l jaysonr' 
alias djangovm='ssh djangodev-vm -l jaysonr'

Next, I added some for package management:

##Package Management 
alias update='sudo yum update' 
alias install='sudo yum install' 
alias remove='sudo yum remove' 
alias pkgsearch='yum search'

A few frequently used directories:

##Frequently Used Directories 
alias home='cd ~' 
alias desktop='cd ~/Desktop' 
alias downloads='cd ~/Downloads' 
alias dropbox='cd ~/Dropbox'

A few miscellaneous shortcuts:

##Misc Shortcuts 
alias df='df -h' 
alias ls='ls -F' 
alias lsa='ls -alF --color=auto' 
alias lsl='ls -lF --color=auto' 
alias rm='rm -i' 
alias mv='mv -i' 
alias cp='cp -i' 
alias un='tar -zxvf' 
alias top='htop'

And finally the ability to control a few VM's I run headless & SSH into:

##VirtualBox CLI Machines 
alias startrailsvm='VBoxManage startvm rails_dev --type headless' 
alias stoprailsvm='VBoxManage controlvm rails_dev savestate' 
alias startdjangovm='VBoxManage startvm django_dev --type headless' 
alias stopdjangovm='VBoxManage controlvm django_dev savestate'

So, what are some cool things you have in your ~/.bashrc? I'm always looking to learn new tricks.

Saturday, June 16, 2012

So, you want to learn Linux?

Recently, I have happily been surrounded by some folks with little (or no) experience with Linux who are now eager to learn more about both Linux and Open Source.

I have occasionally caught myself talking to them like a Grandpa talking to his grandkids about walking to school...uphill...bothways...in the snow. Why? When I first loaded Linux things were very different. Sure, it was a lot easier when I started (about 11-12 years ago) than in the really early days of distributions like SLS. My first distro was Red Hat 7 (the *original* Red Hat before the Fedora Project). Even though some things were less magically auto-configuring as they are now, it was still pretty easy to install and use for someone who was already a Windows and Macintosh 'power-user'. It wasn't until I got 'bored' with Red Hat/Fedora and moved on to Slackware did I really learn about Linux.

I used Slackware exclusively for several years before moving on Ubuntu (and eventually, most recently back to Fedora/Red Hat). I initially moved on from Slackware because I was at the point where I truly understood the system, and just wanted something that was more magically auto-configuring, with a more robust package manager, and with more pre-built packages in the repositories (with proper dependency resolution). I'm glad I had that experience with Slackware though...because...without it, I don't think I would have ever really understood how a Linux distribution works the way I now do.

Really (I feel kinda 'old' saying this) folks who only started with a distro like Ubuntu, Mint, Fedora or openSUSE, that just works with a few mouse-clicks after booting from a LiveCD/USB just don't get exposed to the underpinnings of the system in the same way. Sure, you can go seek out the innards, but how many really do? Even if you want to learn, it's just harder to do (or it seems that way to me).

The funny thing is, now, I look at distros like Slackware and Arch and think of them as 'simple'. Why? Because there is no magic happening anywhere. You can easily see where everything is and what it does. They really aren't hard even though they are thought of as hard distros. Sure they are less automatic, but I wouldn't call that hard. My truck is a straight-drive...I don't find it hard, just less automatic. Same difference, really.

My advice to someone wanting to use Linux? Download one of the top-5 distros, load it up and compute away. Simple as that. My advice to someone wanting to learn Linux?

  • Use it. Don't dual-boot. MAKE it do what you need it to do. Don't give up.
  • Install a hard (ahem...less automatic) distro. Slackware, Arch, Debian, even Gentoo (if you have the patience for emerges).
  • Make that hard distro work. MAKE it do what you need it to. Don't give up.
  • Either stick with the hard distro, or move back to an easy distro.
  • Break stuff, then FIX it.
  • Ask for help. Join Mailing-lists, IRC channels and Internet Forums. You'll meet some cool people..and some jerks...just like 'real-life'. Learn from the cool people and ignore the jerks (unless they have good info).
  • TEACH back to others what you learn.
  • Become a part of the Open Source community.
  • Learn the difference between Open Source, Free Software and 'Freeware'. 
  • Use what distro/desktop environment/text editor/insert some other app here that makes you happy; Not what makes some anonymous internet person happy.
  • Argue with those anonymous internet people about what you think is best.
  • Change your mind. Try different things. You would've never known you liked Chocolate Ice Cream if you never tried it.

...and most importantly...

Have Fun!

Regardless of whether I'm using a computer for pleasure, learning or for work, I'm always having fun. That's how I know I'm in the right career. I love computers...I'm fascinated by them. I like teaching them new things, and I like them to teach me new things. 

Wednesday, June 13, 2012

Wordpress hosting on OpenShift

You may have heard of OpenShift by Red Hat by now, but if not you should check it out.

What is OpenShift? Well, to quote from the website:

OpenShift is Red Hat's free, auto-scaling Platform as a Service (PaaS) for applications. As an application platform in the cloud, OpenShift manages the stack so you can focus on your code.

So, in a lot of ways, you could compare OpenShift to a service such as Heroku. In addition to hosting your own application, there are several pre-built applications you can choose from. I just set up a Wordpress site in literally less than 5 minutes using OpenShift. The purpose of that site? Well, there will be more to come on that later.

The developer preview supports up to 3 gears per user. You have a quota of 40,000 files, 1GB of storage, and 512MB Memory per gear.

Now, back to the Wordpress setup - I literally signed up for OpenShift, clicked a button to choose "Wordpress", gave it a name, clicked another button to "Create Application, and almost instantly I was able to log into my Wordpress instance. You really can't get any easier than that.

In addition to Wordpress you can choose from:

  • Kitchensink example to see what OpenShift can do for hosing Java apps
  • Drupal
  • Ruby on Rails
If you want even more there are more quickstarts available here including:
  • jboss
  • sinatra
  • django
  • webpy
  • nodejs
  • cakephp

...and many more.

You can also roll-your-own with your framework of choice, and create your own quickstart.
There are several Web Cartridges available. Web cartridges:

handle HTTP requests and serve web pages or business APIs. The OpenShift servers route traffic to your application's cartridge, and your code does the rest. If you need a place to store data, adding a database or NoSQL cartridge will automatically configure your web cartridge with the right access.

These include:
  • Python (2.6)
  • Perl
  • Node.js
  • Ruby (1.8.7)
  • And Do-it-Yourself which is a blank slate for currently unsupported languages and frameworks.

You can also choose from the following databases:
  • MySQL
  • PostgreSQL
  • MongoDB (NoSQL Database)

...and for Admin purposes:
  • phpMyAdmin for MySQL
  • RockMongo for MongoDB
I'm really pleased so far - I'm blown away - it's a great service by Red Hat, and my only wish is that there were a pre-built Rails 3.x/Ruby 1.9.3.

Sunday, June 10, 2012

SouthEast LinuxFest 2012 Recap

Today I returned from my first ever Linux conference, the SouthEast LinuxFest. I'm sure it's just the first of many more to come. I also had the unique experience of attending with 3 non-linux users, and I'm happy that they not only got exposed to Linux and F/OSS, but that we were able to have some interesting discussions around Linux, its history and that the experience fostered a genuine interest in them for learning more.

While I was able to attend many great talks, and learned a lot of new things, honestly the best part was being able to meet and interact with members of the community that I had perhaps only known as an online persona. I was also happy to get to meet a few members of the Fedora Community, and I'm more excited than ever to become more and more involved in Fedora. I'm in the process of becoming a Fedora Ambassador and I've already been working on an internship with the Fedora Infrastructure team. So, thanks to all the Fedora folks for making me feel welcome. You guys (and ladies) are awesome!

I've also been inspired to take steps to form a local Linux Users Group in my area. Although I don't know many other local Linux users personally, I know there has to be a few out there locally, and if we have some organized events, perhaps we can earn some more.

I've been a 'consumer' for far too long, it's time to start contributing back in tangible ways.

Saturday, June 2, 2012

Improving Fedora 17 Font Rendering

Update 08/11/2013: 

Both of these posts are now out of date - for more info: 

I named the new post Part Deux forgetting that I had made a part II already :-) It seems when I did that, I liked "Slight" hinting better.

Update 08/03/2012:

 This post is now, as far as I'm concerned out of date. Please see this updated post for more info: http://jaysonrowe.blogspot.com/2012/08/improving-fedora-font-rendering-part-ii.html

One of the adjustments when moving from Ubuntu to Fedora was font rendering. Out of the box, Fedora's font rendering isn't bad it's just different. Often fonts look different, than on Ubuntu.

I first came across this blogpost from Jason Brooks which actually pointed me to this blogpost. After following those steps, they looked better but still not quite right. So...like any good nerd, I did more research which led me to this post on the Fedora Forums talking about Infinality (which was also mentioned by a commenter in my Fedora Setup Guide post as well. After installing the repo and installing the following packages, my fonts are finally perfect! This is why I love the internet :)

To get everything set up (in a terminal):

$ sudo rpm -Uvh http://www.infinality.net/fedora/linux/infinality-repo-1.0-1.noarch.rpm

$ sudo yum -y install freetype-infinality fontconfig-infinality libXft-infinality

Also note that before doing this I did back out the changes I'd made previously, and rebooted, getting me back to a default config.