Sunday, January 12, 2014

Fedora 20 Developer Workstation Configuration

My hard drive crashed and I decided to switch back to fedora after using other distributions for the past few years. I'm going to document the packages I install and the customization and configurations I made to create my workstation. I primarily use my workstation for software development but also use it to listen to music, watch videos, etc. so much of what I do may be applicable to other types of users as well.

My Instructions assume 64-bit fedora 20.

Disable SELinux

SELinux always seems to cause one problem or another and so I usually just disable it. Edit /etc/selinux/config and change the line:

SELINUX=enforcing

to

SELINUX=disabled

Install Miscellaneous Utilities

gnome-tweak-tool is used to make some modification to the gnome desktop. Install it with the following command:

yum install gnome-tweak-tool

Unison is a tool I like for synchronizing files between different workstations. I use it as a simple backup tool and to keep documentation and downloads synchronized between my workstations. Install it with the following command:

yum install unison

Some other goodies:

yum install git nmap wget

Install Chrome

To install chrome (stable and 64-bit version), we need to add a repository by creating the file:

/etc/yum.repos.d/google-chrome.repo

with the following contents:

[google-chrome]
name=google-chrome
baseurl=http://dl.google.com/linux/chrome/rpm/stable/x86_64
enabled=1
gpgcheck=1
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub

Install the stable version of chrome with the following command:

yum install google-chrome-stable

Add RPM Fusion and Livna Repositories

Fedora is very strict about only offering open source software. Some useful software that is not open source is still available to be installed and much of it is available in the RPM Fusing and Livan repositories. We will add these two repositories with the following commands:

yum localinstall --nogpgcheck http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-20.noarch.rpm

yum localinstall --nogpgcheck http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-20.noarch.rpm

rpm -ivh http://rpm.livna.org/livna-release.rpm

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-livna

Install Multimedia Applications and Codecs

Install codecs for listening to music and watching videos with the following command:

yum install gstreamer gstreamer-plugins-good gstreamer-plugins-bad gstreamer-plugins-ugly gstreamer-plugins-bad-nonfree ffmpeg ffmpeg-libs gstreamer-ffmpeg libdvdread libdvdnav lsdvd libdvdcss vlc audacity

Install Flash

In case you want/need flash, install with the following commands:

rpm -ivh http://linuxdownload.adobe.com/adobe-release/adobe-release-x86_64-1.0-1.noarch.rpm

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux

yum install flash-plugin

Install Graphics Applications

Install various graphics applications for working with images with the following command:

yum install gimp gimp-data-extras gimpfx-foundry gimp-lqr-plugin gimp-resynthesizer gnome-xcf-thumbnailer ImageMagick nautilus-image-converter inkscape dia

Install PostgreSQL

Install PostgreSQL with the following command:

yum install postgresql-server postgresql postgresql-contrib postgresql-jdbc pgadmin3

Initialize the PostgreSQL database with the following command:

/bin/postgresql-setup initdb

Now we want to start the service and then enable it to start on reboot with the following commands:

systemctl start postgresql.service
systemctl enable postgresql.service

We can verify that PostgreSQL is started by su'ing to the postgres user and connet to the PostgreSQL database with the following command:

psql

Since we're logged in, we should set a password for the postgres user with the following command at the postgres# prompt:

alter user postgres with passpord 'new_password';

Now we can exit out with the \q command.

We want to configure PostgreSQL so that applications and users can connect to the database on localhost. To do this, we need to modify the file:

/var/lib/pgsql/data/pg_hba.conf

and change the line:

host    all             all             127.0.0.1/32            ident

to:

host    all             all             127.0.0.1/32            md5

After this change, we need to restart PostgreSQL with the following command:

sysemctl restart postgresql.service

We can now connect to the PostgreSQL database with the following command:

psql -U some_user -h localhost some_database

Install OpenLDAP

I actually gave up on this and will go back to using the OpenDS server for now even though this project seems to have gone away when Oracle bought Sun Microsystems. ApacheDS looked like an interesting option until I saw that is wants to pull in 180 dependencies.

Install the OpenLDAP server with the following command:

yum install openldap openldap-clients openldap-servers

Now we want to start the service and then enable it to start on reboot with the following commands:

systemctl start slapd.service
systemctl enable slapd.service

Install Apache

Install the Apache web server with the following command:

yum install httpd httpd-devel httpd-manual mod_ssl

Now we want to start the service and then enable it to start on reboot with the following commands:

systemctl start httpd.service
systemctl enable httpd.service

Configuration varies quite a bit depending on usage and is left as an exercise for the reader...

Install Tomcat

Install the Apache Tomcat application server with the following command:

yum install tomcat tomcat-admin-webapps tomcat-docs-webapp tomcat-javadoc tomcat-webapps tomcat-native

Now we want to start the service and then enable it to start on reboot with the following commands:

systemctl start tomcat.service
systemctl enable tomcat.service

Configuration varies quite a bit depending on usage and is left as an exercise for the reader...

Install VirtualBox

VirtualBox: when you want to try out other distro's or just have to run something in Windows.

yum install VirtualBox


23 comments:

  1. Hi I am Emi from Chennai. Thanks for sharing the informative post about Java technology. It’s really useful for me to know more about this technology. Recently I did Java Course in Chennai at a leading Java Training Institutes in Chennai. This is really useful for me to make a bright career.

    ReplyDelete
  2. Good one! Finally i get the configuration instructions of some applications from here. Event Applications Android

    ReplyDelete
  3. Great post. I really learned some new things in here. So thanks

    IOSH safety course in Kuwait

    ReplyDelete
  4. This comment has been removed by the author.

    ReplyDelete
  5. Thank you for this great explanation. It was really helpful.

    jewelry photo editing services

    ReplyDelete
  6. Ap 10th Results 2016

    Thanks for providing valuable information in this article by author...............

    ReplyDelete
  7. Thank you sir for sharing information in this post
    Latest Railway Jobs 2016

    ReplyDelete
  8. I like the valuable information you provide in your articles, Thanks for sharing
    Latest Govt Jobs Recruitment 2016

    ReplyDelete
  9. very nice articles ....use full information...and thanks for sharing....
    IOSH safety course in Kuwait

    ReplyDelete
  10. Information is good in the article, thanks for posting

    Latest Govt Jobs

    ReplyDelete
  11. An awesome post “thanks” for mentioning YOUR BRAND in your excellent article.

    IBPS P.O VI Recruitment 2016

    ReplyDelete
  12. Excellent post! Thanks for sharing such a useful post.

    web design course in chennai

    ReplyDelete
  13. hi welcome to this blog.really you have post an informative blog.it will be really helpful to many peoples.
    codedUI training

    ReplyDelete
  14. Sarkari Recruitment is one of the biggest Indian Job Site so here you will getUPPSC Jobs 2017so

    ReplyDelete
  15. Very Nice Blog I like the way you explained these things. I’ve been looking for ways to improve my website and overall rankings.I hope your future article will help me further.Take SEO Training in Chennai to mould yourself.

    ReplyDelete