Scrivener works under Ubuntu 19/20

To get Scrivener to work, you will have to jump through some hoops.

So before you go on I feel the need to point out that there are two ways to do this. I’m having a bad day and nothing is working so I’m going to write out what should basically work, and I’ll miss some steps and have to come back and fix this later. If you do this the first way you should have better interactions with Scrivener down the road. If you do the second you may have to force the install to get it to work. Also, this is random notes still, not a coherent document. I need to set up a virtual system temporarily and go through this a few times and get the order and process down so it works every time. These are just noted right now because I still had to fight with the install to get it to work.

Option 1:

Add the sources to the apt config.

sudo vi /etc/apt/sources.list

Use editor of your choice, I use “vi”, it is a protect file you must use “sudo”.

deb http://us.archive.ubuntu.com/ubuntu/ pool main universe multiverse
deb http://us.archive.ubuntu.com/ubuntu/ xenial main universe multiverse

Then run the apt command to install the packages.

sudo apt-get update
sudo apt-get install multiarch-support*
sudo apt-get install gir1.2-gst* libgstreamer-plugins-base0* libgstreamer0*

If you are still getting errors about adding packages try this:

sudo apt-get install libgthread* libglib* libgobject*  libgbase* libgmodule* libvisual*

If your getting “png” errors then try the easy way, and restest, if that doesn’t work see below instructions for compiling the module on your install so it will be compatible.

sudo apt-get install libpng12*

Option 2: Manual

Add multiarch-support.

Find more information about multiarch-support here:
https://wiki.debian.org/Multiarch/HOWTO

wget http://archive.ubuntu.com/ubuntu/pool/main/g/glibc/multiarch-support_2.27-3ubuntu1_amd64.deb

Then you can install it.

sudo dpkg -i multiarch-support_2.27-3ubuntu1_amd64.deb

Next:

Download the files..

mkdir scriv-debs
cd scriv-debs
wget http://archive.ubuntu.com/ubuntu/pool/main/libp/libpng/libpng_1.2.54.orig.tar.xz
wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gstreamer0.10/gir1.2-gstreamer-0.10_0.10.36-1.5ubuntu1_amd64.deb
wget  http://archive.ubuntu.com/ubuntu/pool/universe/g/gstreamer0.10/libgstreamer0.10-0_0.10.36-1.5ubuntu1_amd64.deb
wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gst-plugins-base0.10/gstreamer0.10-plugins-base_0.10.36-2_amd64.deb 
wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gst-plugins-base0.10/libgstreamer-plugins-base0.10-0_0.10.36-2_amd64.deb

Try this:

sudo dpkg -i *.deb

(Only do this next step if you know what you are doing, it can potentially cause problems….)

sudo dpkg -i --force-depends *.deb

PNG errors – Manual install:

cd /usr/lib/x86_64-linux-gnu/
  • your directory may vary…
apt-get update
apt-get upgrade
apt-get autoremove
sudo apt-get install libtool autoconf build-essential pkg-config automake tcsh
wget http://archive.ubuntu.com/ubuntu/pool/main/libp/libpng/libpng_1.2.54.orig.tar.xz
tar -xvf libpng_1.2.54.orig.tar.xz
cd libpng-1.2.54
./autogen.sh
./configure
make -j8
sudo make install
sudo ldconfig

BadPixMap errors

Next, you are probably going to get some perms errors. To fix the perms error that displays itself as “BadPixMap”.

sudo QT_X11_NO_MITSHM=1 $pathto/Scrivener $file

Example:
sudo QT_X11_NO_MITSHM=1 /usr/share/scrivener/bin/Scrivener /home/southworth/Downloads/DragonDiary.scriv/DragonDiary.scrivx

sudo QT_X11_NO_MITSHM=1 /usr/share/scrivener/bin/Scrivener /home/my_user_name/Scrivener_Files/DragonDiary.scriv/DragonDiary.scrivx

https://github.com/unetbootin/unetbootin/issues/66 <– more information about the reason for the permissions errors.

Disclaimer

This post is mostly a note to myself so I can find the files and steps again easily in the very likely event I need to redo the laptop again and reinstall Scrivener, again. I did a lot of other things as I figured out what was needed, and where to get the files. So…. this may not be exactly the right steps. Reviewing the steps I took these seemed like the ones that were actually needed. Along the way, I installed python3 and a few other packages that I needed for another project. Nothing indicates they were needed for Scrivener so I’ve not included them here.

Good luck with your install. You can ask questions through the contact us page. I’ll try to help you if I can.