Migrating from Ubuntu 16.04 to Fedora 28

ubuntu
fedora
Tags: #<Tag:0x00007f21af5f3520> #<Tag:0x00007f21af5f3390>

#1

Today I am starting a solid attempt at “migrating” from Ubuntu to Fedora. Is migration the correct term?

Anyhow, since my site is updated via git and text, I am documenting this here, in case I am unable to access and update those during the process.

Okay, whenever I do this my first impulse is to delete files. Specifically those in dl and projects/temp. My $home looks like:

.
├── books
├── Desktop
├── dl
├── docs
├── games
├── music
├── pics
├── projects
├── reading
├── snap
├── templates
└── VirtualBox VMs

Looking at that, it appears I already have my work cut out for me, so let’s get deleting!

I like to start with dl, my name for what is commonly named Downloads. I mostly operate my computer from the commandline, and it is really annoying to tab-complete past Desktop (never used), Documents (renamed to docs) and Downloads (renamed to dl [because I also like to keep my downloads and the down-low]). :slight_smile:

du tells me my downloads total 13GB… okay, that will go first!


#2

I found a PDF I wanted to keep in dl, so where to put it: books or reading? Well, turns out books had a single book, put there by Calibre. I like that software, but I hate how it sorts files on disk. I won’t be using it moving forward, instead opting to save them based on a directory system bespoke to me.

So books is gone! The reading directory was syncing to Nextcloud, but I don’t want that going on in the background (PDFs tend to be huge). Turning that off, I will collect all the books and then move them someone easier for me to access.

I know there are services, such as Libreture, but that is for folks that don’t roll their own, and I very much do. Storing books in Nextcloud is fine.


#3

Okay, dl is empty! Well, kinda. I have a new directory, files-to-be-sorted. I kinda need that so I can break the loop. Fortunately it is much smaller than the initial 13GB: 2.6GB!

I deleted a whole lot, but also I needed to put invoices, receipts and paperwork in place. And of the remaining files the vast majority of them are RPG PDFs, which get up there in storage space!


Quick aside: I love reading RPG books! More so than playing. But unlike seemingly every other person on the planet that likes RPGs, I do not care about artwork. Art is fine and all, but I would never take it into consideration for purchase or playing. My imagination wins, every time. :slight_smile:


That should be the bulk of the unsorted files, so the rest can just be stashed somewhere until I need them. Let’s see what that looks like:

Because that weird blotty color thing is so very easy to figure out!

Okay, so what to do with pics. Well, first I ought to rename it to media on the next system, as I increasingly include audio and video there. I use Shotwell to import and search media, but maybe there is something new out there?

I use year and month directories to sort photos, and it works fine. However, I certainly don’t need to tote these things around with me on my laptop. I’d prefer to one day actually process media in a timely fashion, and then boot it to cold storage and published artifacts instead…

My current plan is to keep an archive of my personal media on the media server attached to the tv. Not because I want to view it there, but rather because it has a very large drive, with another very large drive attached to it. I’m thinking I can easily stash my tiny photos (compared to movies and tv show files) on both of those drives, as well as syncing to a Nextcloud drive.

In fact, I might do that in reverse, where I sync them up to Nextcloud, and the media server will (slowly, while idling) sync up and copy to the attached drive.

That way I am always keeping important media in three places: published, Nextcloud, and media server (I consider the attached drive a kinda janky RAID).

When I load media up on the new laptop I am probably not going to bring anything over. I can process the rest in time. Time to start fresh! :slight_smile:


#4

media is on the big ol’ backup drive, so moving over music now!

The media library on this laptop is merely 11GB, all ogg vorbis. But I am just making a single copy, and won’t be adding it to the new system.

I don’t listen to music on my laptop.

Instead I use a DAP (specifically a Cowon Plenue D) and FLAC for all my music, and that’s it. No mobile devices, no computers. Just my kick-ass headphones. :slight_smile:

As you can imagine, that saves a huge amount of lappy drive space! But I do keep my FLAC somewhere. I think. I am almost certain! And eventually I will consolidate them in one or two places. It makes sense to have those live on the media server…


#5

I have a projects directory where most of the action on the filesystem happens. It was 10GB, but I was able to delete most of the files fairly quickly. I just went into each project, did a git push, and fix any issues that came up.

Yep, every project directory is either a git repo or collection of git repos. They roughly follow the same paths as their clone URLs, with the addition of a temp collection where I clone randos for fun and profit. :slight_smile:

projects will be very easy to set up in the new system, as I will only pull down what I need!

I actually considered doing this with everything: projects, music, media, and books. With sub-directories you just add it as a sub-module, so you only pull what you need at any given time. But I don’t want to deal with storing binaries in git, it is like loading all the files into a slightly harder filesystem to use that isn’t on my own hardware… so that’s out!

One project I’m hoping to get started is setting up my dot files in the new system. I’ll have my files in backup of course, but I want to spend as much time as I need to document what I’m doing. I deserve to understand what I’ve done to myself from the past! :slight_smile:


#6

Here we go! Home directory moved over, and I made sure I know how to unlock and add my ssh key to the new system! Let’s see how bad this gets! :slight_smile:


#7

Well that was ridiclous! Install failed out the gate, and it ended up being bad install media. Isn’t that always the case?

The silly thing that happened in this case is that I downloaded a 1.7GB install image and got a faulty install drive, but had an identical drive with the identical image… from sometime in the past. I mean, I downloaded today’s image on a Fedora machine, so I must have had it.

And then as I am explaining all this to Susan, I drop the good drive next to the faulty one… and can’t tell which is which.

Meh! I got wifi working! And now I will sign off! Yay! Fedora 28! :slight_smile:


#8

Thought I’d share what a brand home directory looks like, as blots of color:

I just copied .mutt over, since I figured I didn’t really need to download my mail headers again…


#9
[maiki@yuzu ~]$ tree
.
├── dl
├── docs
└── projects

3 directories, 0 files

Used it all day, and so far haven’t had to save anything. That is how most days are.

I noticed Versity announces next generation open source archiving filesystem [LWN.net], which got me thinking about https://www.scoutfs.org/ and what kind of archiving a person can reasonably be expected to deploy…


#10

One advantage of upgrading was using updated versions of Gajim + OMEMO.

The libraries for Omemogajimplugin · Wiki · gajim / gajim-plugins · GitLab isn’t included in Fedora, but there is a COPR repo for it, so I followed those directions exactly:

dnf copr enable philfry/gajim
dnf install python3-axolotl python3-axolotl-curve25519 python3-qrcode

I currently use OMEMO on four devices, but that will probably change soon. However, when I do I plan to publish the key IDs on interi.org. Since these things include QR Code stuff, maybe I can generate one for the site… :slight_smile:


#11

Moving git configs over is very simple in my case, I have two small files.

.gitconfig:

[user]
        name = maiki
        email = maiki@interi.org
[core]
        excludesfile = /home/maiki/.gitignore
[push]
        default = simple

.gitignore:

*~
.DS_Store
node_modules
.ftppass

I don’t know when I made these, and I don’t mind the simplicity. My git setup works for me! :slight_smile:

But for the novelty of it, what are neat things to put in those files?!


#12

I’m resisting installing software into my home directory, because that is what I always do and I’d like to learn how to integrate the warez I use into the larger filesystem. I mean, if something I am using is portable, it shouldn’t have to live in my home directory, and I can focus on keeping it clean and for config and storage.

There are a lot of package manager-type things out there, too. I decided to move away from snaps because I don’t trust Canonical and developers to not exploit users for profit, such as with coinminers. Flatpak has a lot of issues still, but my interest in the Fedora Atomic platform includes it.

On the last version of the laptop I had a lot of development tools installed for webcraft, but not really the web tools I use. Node, and yarn to manage. VVV for WordPress dev via Vagrant.

I am looking to learn more about python, because a lot of software I like is written in it, and I’d like to extend them. But I’ve only dipped my toes in the water with pip. I need to track down some jaded blog posts waxing a nostalgic-mortem on how they would have done it from the start… :slight_smile:


#13

I wanted to connect to my deluge server, but I recalled the UI for deluge could be installed without the daemon, which would be ideal!

dnf search deluge shows:

===================================== Name Exactly Matched: deluge ======================================
deluge.noarch : A GTK+ BitTorrent client with support for DHT, UPnP, and PEX
==================================== Name & Summary Matched: deluge =====================================
deluge-console.noarch : CLI to Deluge
deluge-daemon.noarch : The Deluge daemon
deluge-gtk.noarch : The gtk UI to Deluge
deluge-web.noarch : Web interface to Deluge
deluge-images.noarch : Image files for deluge
deluge-common.noarch : Files common to Deluge sub packages

Ah, there we go: sudo dnf install deluge-gtk.

Of course it comes along with some friends:

Installed:
  deluge-gtk.noarch 1.3.15-10.fc28                 SDL_image.x86_64 1.2.12-19.fc28                      
  SDL_mixer.x86_64 1.2.12-15.fc28                  SDL_ttf.x86_64 2.0.11-12.fc28                        
  boost-python2.x86_64 1.66.0-8.fc28               boost-random.x86_64 1.66.0-8.fc28                    
  deluge-common.noarch 1.3.15-10.fc28              deluge-daemon.noarch 1.3.15-10.fc28                  
  deluge-images.noarch 1.3.15-10.fc28              fluidsynth.x86_64 1.1.9-2.fc28                       
  fluidsynth-libs.x86_64 1.1.9-2.fc28              jack-audio-connection-kit.x86_64 1.9.12-4.fc28       
  libffado.x86_64 2.4.1-1.fc28                     libglade2.x86_64 2.6.4-18.fc28                       
  libmikmod.x86_64 3.3.11.1-3.fc28                 libxml++.x86_64 2.40.1-6.fc28                        
  openblas.x86_64 0.3.2-3.fc28                     openblas-serial.x86_64 0.3.2-3.fc28                  
  openblas-threads.x86_64 0.3.2-3.fc28             portmidi.x86_64 217-22.fc28                          
  pygobject2.x86_64 2.28.7-2.fc28                  pygtk2.x86_64 2.24.0-21.fc28                         
  pygtk2-libglade.x86_64 2.24.0-21.fc28            python2-Automat.noarch 0.6.0-1.fc28                  
  python2-GeoIP.x86_64 1.3.2-8.fc28                python2-asn1crypto.noarch 0.24.0-1.fc28              
  python2-attrs.noarch 17.4.0-2.fc28               python2-cairo.x86_64 1.16.3-1.fc28                   
  python2-cffi.x86_64 1.11.5-3.fc28                python2-chardet.noarch 3.0.4-5.fc28                  
  python2-constantly.noarch 15.1.0-1.fc28          python2-cryptography.x86_64 2.3-1.fc28               
  python2-enum34.noarch 1.1.6-4.fc28               python2-hyperlink.noarch 18.0.0-1.fc28               
  python2-idna.noarch 2.5-4.fc28                   python2-incremental.noarch 17.5.0-2.fc28             
  python2-ipaddress.noarch 1.0.18-4.fc28           python2-nose.noarch 1.3.7-19.fc28                    
  python2-notify.x86_64 0.1.1-36.fc28              python2-numpy.x86_64 1:1.14.5-1.fc28                 
  python2-ply.noarch 3.9-6.fc28                    python2-pyOpenSSL.noarch 17.3.0-3.fc28               
  python2-pycparser.noarch 2.14-13.fc28            python2-pygame.x86_64 1.9.4-1.fc28                   
  python2-pyxdg.noarch 0.25-15.fc28                python2-rencode.x86_64 1.0.5-8.fc28                  
  python2-setproctitle.x86_64 1.1.10-7.fc28        python2-six.noarch 1.11.0-3.fc28                     
  python2-twisted.x86_64 18.4.0-4.fc28             python2-xpyb.x86_64 1.3.1-11.fc28                    
  python2-zope-event.noarch 4.2.0-8.fc28           python2-zope-interface.x86_64 4.5.0-1.fc28           
  python3-numpy.x86_64 1:1.14.5-1.fc28             rb_libtorrent.x86_64 1.1.7-3.fc28                    
  rb_libtorrent-python2.x86_64 1.1.7-3.fc28       

But only what’s needed, nothing more (well, I bet a bunch of those aren’t really needed, but I still get what I want!). :slight_smile:


#14

Of course I’ve got to hugo, but we immediately run into a difficult decision.

See, I’ve always been of the opinion that web server software should not live in a distro’s repos. WordPress, Drupal, any web app, it isn’t a good model. For your desktop, folks move slower and fix deep problems, and we rarely get security freakouts where folks are at risk.

Not true with web software! My services get updated constantly!

Plugins, themes, modules: add-ons are too much to track in distros, for two reasons:

  1. There are 40,000 WP plugins in the public repo, no distro (read: group of volunteers) wants to take that on (I’d imagine this extends to the current curators, too! ^_^)
  2. You don’t want the 20 extra pieces of your site to not be able to update, because your distro’s core package can’t roll up with them

Now Hugo is a different beast, but just as complicated, despite being a parsing system rather than a web app. One would think it doesn’t really matter which version one runs, but it gets complicated, because the project updates often, it is very actively developed. But that means we are adding and changing things all the time (though rarely breaking anything, it is the promise of <1.0.0 that things can break).

You can check Bug 1567909 – hugo-0.46 is available to see how difficult it is to keep Hugo up-to-date in Fedora. There may be a place for me to help out there, since I’d like to be more active in Fedora, and the hugo package seems like fairly impacting, low-hanging fruit. :slight_smile:

But we’ll have to answer, what is the point of a package? Will folks be able to pin a version of Hugo they need? Is that sustainable for the package maintainers?

In the meantime, and because I generally run the latest version, I decided to install the COPR at daftaupe/hugo Copr.

[maiki@yuzu ~]$ hugo version
Hugo Static Site Generator v0.48 linux/amd64 BuildDate: 2018-08-29T09:43:22Z

#15

A post was split to a new topic: Reading the RSS news over the network over the network over the network


#16

I normally only take photos off the RX100 every month or so, and this is the first time trying it with Fedora. My card is formatted as exfat, and that is an issue out the gate, but easily solved, as I already needed rpmfusion-nonfree for the wifi drivers:

sudo dnf install fuse-exfat

That fixes it right up, but let me tell ya: this finally works as expected! Shotwell actually ready my card inside the app and let me import-all!

I’ve used Shotwell for years, since the beginning, and I’ve never gotten that to work. I’ve seen videos of it working, so I know the theory. Hey, that almost makes up for IBM buying our corporate overlords!


#17

Since using taskwarrior I’ve been maintaining a clean home directory, thanks to reminders each week to clean my downloads or processing a particular directory.

Cleaning out the dl once a week is way easier than every couple of years!