Sunday, July 3, 2016

Upgrading Fedora

I recently upgraded my laptop to Fedora 24 and took notes about the process.  I'm collecting them here, mostly for future reference, but also for anybody else out there that maybe happens to stumble upon them.

First things first, before upgrading I make sure to do the following:
  1. Push any git commits that need to be pushed.  This includes dot files if I've changed them (haha, argh! Just got burned by this one actually).
  2. Make sure Syncthing is properly syncing the files I have under its control, and that everything is up to date everywhere.
  3. Go through ~/Applications and see if there's anything I want to save, and if so manually back things up. 
  4. Manually back up my documents and projects.
  5. Manually back up any videos or other large files I happen to want to save
First off, let me say Syncthing is awesome.  Fairly easy to set up and really low maintenance once it's up and running.  I use it to keep all my documents and projects in sync between 3 of my home systems.  If you haven't tried it you should check it out.

Why all the manual backing up of things?  Well, for anything 'important' I mainly rely on Syncthing to distribute things around my network, and then rsnapshot to throw things onto a back up drive.  But it definitely doesn't hurt to have a few extra copies of important stuff lying around.  Everything else?  Well, I'm a digital packrat and there's no way I'd be able to keep everything (not without spending a ton of money anyhow).  I'm keeping enough mooc videos I'll probably never watch as it is.  Upgrades always motivate me (well, make it necessary perhaps) to organize and cull both old and new data, so I do.  I like to think it's a good thing.

I never have trusted the Fedora upgrade process.  I've heard a lot of bad things, so I always perform a fresh install.  Maybe this just means I'm making more work for myself?  Anyhow, post upgrade, I did the following:
  1. Add the following to /etc/dnf/dnf.conf: "fastestmirror=True".
  2. Run "dnf update", and reboot.
  3. Change the desktop and lock screen backgrounds (I may do some of these while updates are running of course), which is in Gnome settings, under background.
  4. Turn off the terminal bell.  Found on the terminal edit menu, under profile preferences.
  5. Disable screen lock.  Found in Gnome settings, under privacy.
  6. Clone my dot files from git and copy them to where they need to be.
  7. dnf install hexchat p7zip vim-enhanced gnome-tweak-tool
  8. Enable Firefox sync.
  9. Configure my Gnome favorites.
  10. Import rpmfusion gpg keys: "gpg --keyserver pgp.mit.edu --recv-keys (ID)".  IDs and more info are found on the site.
  11. Install rpmfusion free and non-free repos.  The "localinstall" option isn't a thing anymore.  Just download the rpms and run "dnf install rpmfusion.foo.rpm".
  12. Install fonts: "dnf install freetype-freeworld".
  13. Install media codecs:  "dnf install gstreamer-plugins-bad gstreamer-plugins-bad-free gstreamer-plugins-bad-nonfree gstreamer-plugins-good-extras gstreamer-plugins-ugly gstreamer1-plugins-bad-free-extras gstreamer1-plugins-ugly gstreamer1-plugins-bad-free-fluidsynth gstreamer1-plugins-bad-freeworld gstreamer1-plugins-base-tools gstreamer1-plugins-entrans gstreamer1-plugins-fc gstreamer1-plugins-good-extras gstreamer-ffmpeg ffmpeg-libs ffmpeg x264 x264-libs h264enc lame lame-libs lame-mp3x twolame mpg123-plugins-extras mpg123 faad2 gstreamer1-libav"
  14. With Gnome Tweak tool enable the global dark theme, enable the date on the top bar, set font antialiasing to "rgba", set font hinting to "none", and set the window focus mode to "mouse".
  15. Add the following to /etc/X11/Xresources: "Xft.lcdfilter: lcddefault".
  16. Install whatever it is I'm working on at the moment, in this case: "dnf install octave qtoctave python2-matplotlib python3-matplotlib python-ipython-notebook python3-ipython-notebook python2-pandas python3-pandas python2-numpy python3-numpy python2-scikit-learn python3-scikit-learn python2-statsmodels python3-statsmodels"
  17. Install and set up Syncthing so I have my projects and data back.
  18. And finally save a list of available packages for future reference, so: dnf list available >& /root/available_packages
One thing I've noticed, I'm not able to play videos half the time if I follow some of the guides you find out there.  So then I always have to sit there installing things until I finally get working videos.  This time around I was determined to figure out what's wrong with the available guides.  So I could be wrong, but it seems to me they're typically missing the gstreamer1-libav package.  Once I installed that I was able to play videos no problem.  Well, maybe Quicktime or Real videos could still be problematic?  Eh, are those even a thing anymore?  At any rate, gstreamer1-libnav and I'm happy.

And that's how it's done on my end.  I'm not saying this is what everyone should do, but it's what I do to get myself back up and running and productive again.  If you're reading this, maybe you'll pick up some tricks?  Or maybe just satisfy a bit of your curiosity.  Cheers.

No comments:

Post a Comment