Since I recently switched my work notebook to Fedora 20, I figured that working with Fedora and Gnome 3 works rather smooth these days.

You’ll get a fairly stable distribution, use community provided repositories (for the nvidia driver), and you’re able to play with bleeding edge software without entirely breaking your production system. I didn’t like (K)Ubuntu that much (dist-upgrade was a huge fail all the time), several alternatives such as Linux Mint or other forks just don’t have a large community base (google the error, and find a solution within minutes). Lately, Debian Testing wasn’t so much pleasure either, and Debian stable is something I will only use for servers, not for notebooks or private workstations.

Other than that, I always play around with RPMs in Icinga Vagrant demo boxes, or keep updating them for Icinga and NETWAYS all the time. Which leaves Fedora the perfect choice for the next years (let’s see about that though).

imagine_fedora_20

Find a list of tools installed below, for whoever that may be useful, I’m certain it is for me when re-installing again. I am still too lazy for a puppet module 😉

The install itself happens from a netinstall ISO, choosing the default crypted LVM with a Gnome desktop installation. Once done, I’ll go get Steam and Wine for some Command & Conquer Red Alert 2 mod action.

yum -y install vim

# NVIDIA driver
yum localinstall --nogpgcheck http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
yum localinstall --nogpgcheck http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r)-nouveau.img
dracut /boot/initramfs-$(uname -r).img $(uname -r)
yum install -y vdpauinfo libva-vdpau-driver libva-utils

# Backup - 1. ssh key
scp -r sys@192.168.2.200:/raid/data/private/imagine/michi/.ssh .
# Backup - 2. rest
scp -r sys@192.168.2.200:/raid/data/private/imagine/michi/{.Xauthority,.Xresources,.bash*,.dosbox,.gitconfig,.openvpn,.rtorrent.rc,.vimrc,docs,download,private,tools,coding} .

Chrome fc20 RPM: https://www.google.com/chrome/browser/ 
Vagrant fc20 RPM: http://www.vagrantup.com/downloads.html

# passwordless sudo
sudo visudo

# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL

michi ALL=(ALL) NOPASSWD: ALL

curl https://raw.githubusercontent.com/git/git/master/contrib/completion/git-prompt.sh > ~/.bash_git

sudo -i

yum install -y gnome-tweak-tool dconf-editor gparted
yum install -y google-chrome-stable rdesktop shutter pigdin pigdin-otr gimp gimp-paint-studio
yum install -y hplip hplip-gui
yum install -y thunderbird thunderbird-lightning thunderbird-lightning-gdata
yum install -y httpd php php-pear php-mysql php-pgsql php-gd php-soap php-ldap
yum install -y screen lynx tcpdump wireshark htop rrdtool
yum install -y cairo-dock cairo-dock-plug-ins
yum install -y NetworkManager-openvpn NetworkManager-openvpn-gnome openvpn
yum install -y git git-csv git-svn git-email
yum install -y autoconf automake libtool zlib-devel strace gdb valgrind clang ccache cmake gcc-c++
yum install -y rpmlint @development-tools fedora-packager
yum install -y mysql mysql-server mariadb-devel postgresql postgresql-server postgresql-devel
yum install -y nagios-plugins-all
# icinga 1.x
yum install -y httpd gcc glibc glibc-common gd gd-devel libjpeg libjpeg-devel libpng libpng-devel net-snmp net-snmp-devel net-snmp-utils docbook-simple
yum install -y libdbi libdbi-devel libdbi-drivers libdbi-dbd-mysql libdbi-dbd-pgsql
# icinga 2.x
yum install -y cmake bison flex openssl openssl-devel
yum install -y boost-devel boost-regex boost-signals boost-system boost-test boost-thread boost
# icinga-vagrant
yum install -y VirtualBox
yum install -y libvirt-devel libxslt-devel libxml2-devel ruby
# icingaweb2
yum install -y php-ZendFramework php-ZendFramework-Db-Adapter-Pdo-Mysql php-ZendFramework-Db-Adapter-Pdo-Pgsql php-devel


chmod a+r /etc/fuse.conf
vim /etc/fuse.conf
# Allow non-root users to specify the allow_other or allow_root mount options.
user_allow_other

vim /etc/vimrc

" custom
set background=dark
set showcmd
set showmatch
" Show (partial) command in status line.
" Show matching brackets.
highlight ExtraWhitespace ctermbg=red guibg=red
match ExtraWhitespace /s+$/
autocmd BufWinEnter * match ExtraWhitespace /s+$/
autocmd InsertEnter * match ExtraWhitespace /s+%#@<!$/
autocmd InsertLeave * match ExtraWhitespace /s+$/
autocmd BufWinLeave * call clearmatches()
" disable shell beep
set vb


exit

Config

# Gnome Config

gnome-tweak-tool
# 'obere leiste' - date, calendar week
# start apps: terminal, chrome, thunderbird, cairo-dock, pidgin
gnome-session-properties
# options - session restore
dconf-editor
# org -> gnome -> shell -> overrides -> button-layout :minimize,maximize,close

# Add __git_ps1 sourcing
vim ~/.bashrc

source ~/.bash_git
function myPrompt() {

# Default dirs
vim ~/.config/user-dirs.dirs

XDG_DESKTOP_DIR="$HOME"
XDG_DOWNLOAD_DIR="$HOME/download"
XDG_TEMPLATES_DIR="$HOME/docs"
XDG_PUBLICSHARE_DIR="$HOME/download"
XDG_DOCUMENTS_DIR="$HOME/docs"
XDG_MUSIC_DIR="$HOME/music"
XDG_PICTURES_DIR="$HOME/pics"
XDG_VIDEOS_DIR="$HOME/download"

# Thunderbird
thunderbird + CTRL+C
cd .thunderbird
scp -r sys@192.168.2.200:/raid/data/private/imagine/michi/.icedove/y4oegof8.default .
vim profiles.ini

[General]
StartWithLastProfile=1

[Profile0]
Name=default
IsRelative=1
Path=y4oegof8.default

# VPN
mv .openvpn .cert
restorecon -R -v ~/.cert

# printer
sudo hp-setup

Software

# RPMBuilds

/usr/sbin/useradd makerpm
usermod -a -G mock makerpm
chmod -R o+rx /home/makerpm/
passwd makerpm
su - makerpm

[makerpm@imagine ~]$ rpmdev-setuptree
[makerpm@imagine ~]$ tree
.
└── rpmbuild
    ├── BUILD
    ├── RPMS
    ├── SOURCES
    ├── SPECS
    └── SRPMS

6 directories, 0 files

exit
# Databases
systemctl start mariadb
mysql_secure_installation


vim /root/.my.cnf
[client]
password = XXX

postgresql-setup initdb
systemctl start postgresql
# Users
useradd icinga
groupadd icingacmd
usermod -a -G icingacmd icinga
usermod -a -G icingacmd apache