Installing Scrivener 3 on Linux using Bottles (tutorial video)

At the request of a user on Reddit, I made a tutorial video walking through the steps of installing Scrivener 3 on Linux using the Bottles Flatpak. I thought I would share a link in the forums here in hopes it might be helpful to someone else trying to get through the process.

Installing Scrivener 3 on Linux using Bottles

6 Likes

Thank you! I’ve found your video on YouTube and I’m looking forward to working from it.

Awesome! I hope it works for you. :grinning:

Thank you for your video on installing Scrivener on Linux. I use linux mint Cinnimon, so the process was slightly different. The problem I am currently having is that when I try to install using my key, I keep getting a message that I must have internet access or that internet not found. Any idea’s that would help a linux newb would be greatly appreciated! I really enjoyed your tutorial and found it very informative. I have used scrivener on windows for years and find it to be some of the best writing software hands down! Any help you are willing to give would be greatly appreciated. Thank you!

I have Mint on an old laptop. I’ll see if I can reproduce the error. It might be a couple of days before I can get to it

Couple of “rule out the obvious stuff” questions:

  1. You do have an active Internet connection? You can watch a video on YouTube on the computer you are trying to activate Linux on?

  2. You are certain you successfully installed the “dotnet 48” dependency in your Bottle for Scrivener?

1 Like

Thank you for looking into this for me. I can safely say that I have a good internet connection because I am installing bottles and scrivener on one screen and following along with you on another.
I have installed dotnet 48 and am able to follow all your steps until I get to the activation part and then that is when I hit a snag. I have auto removed bottles on the command line and started over with fresh installs twice and keep getting to the activation problem. I assume That dotnet 48 is installed correctly because after installation when I go back to dependiances I can not see allfonts or dotnet 48 as downloadable . Maybe that is my problem. I will check and let you know if that is the problem. Have a great weekend!

I have two theories that I want to test once I get a chance.

  1. I am wondering if you might solve the problem by starting over clean and installing the oldest versions of the Dot Net dependency and slowly upgrading. Maybe starting with 2.0 and upgrading through each subsequent version. I had to do something similar to get Scrivener running directly under wine a while back, but so far I’ve not had to do that with Bottles. Regardless, it is an easy if time consuming experiment.

  2. Since Bottles is a Flatpak, I’m wondering if by some fluke it hasn’t been given permission to use the network. There is an app called Flatseal that will easily let you see the permissions each Flatpak app has and allow you to toggle them on and off at will. It should be available in the Mint software center. Again, a pretty easy experiment to confirm or rule out that Bottles has network access.

Hi bro, Ubuntu 22.04 here. I used your tutorial to install Scrivener via Bottles and faced the same issue as the other fella, that is, activation not getting through.

I managed to activate my copy by doing the following:

When you create a new bottle for scrivener DO NOT choose “Application”, choose “Custom”. Custom means you’ll have to install the dependencies yourself. Now go and install the following dependencies: allfonts, dotnet48 and gecko. DO NOT install “mono”. Mono gets installed by default when you create an “Application” bottle, but it seems to be conflicting with dotnet.

There is another way, though you have to pay for it, and that is to use Crossover by CodeWeavers. It’s a GUI to Wine.

I’ve used the Mac version for years, as my collaborator is Windows-based and I wanted to be able to see her interfce for troubleshooting any problems. I’m not geeky enough to work with Wine directly, but Crossover made it easy. All I had to do was ask it to install a suitable version of .NET and then disable text-to-speech.

After that, plain sailing.

:slight_smile:
Mark

1 Like

Fernando,

Thank your for these tips. I’m going to test them on a couple of different computers and versions of Linux and then see about updating the tutorial. Unfortunately I don’t think Youtube will allow me to edit the existing video, so I’ll have to upload a new one.

A few comments down, Fernando has found a solution if you want to try it.

You’re welcome. Hope it works.

To be honest I didn’t know what mono did when I decided to do an installation without it, but, according to the project’s site, “Mono is an open source implementation of Microsoft’s .NET Framework”. So I guess it is redundant if you install any recent dotnet dependency.

1 Like

Ok, I managed to install and activate it a 2nd time. So it means it was not a fluke. After some research and testing I can share the following findings:

  1. The “subtractive method” does not work, that is, if you create an “Application” bottle and then uninstall mono activation will still fail.
  2. Creating a “Custom” bottle and installing mono will also result in activation failure (tested).
  3. When creating an “Application” bottle, DXVK and VKD3D are enabled by default. Those are for Direct3D compatibility. I don’t think they are necessary, but enabling them in a “Custom” bottle has no negative impact.
  4. Gecko is for HTML. I assume it is necessary for Scrivener to work. I may be wrong.
  5. Composition Mode is borked, unless you go to “Advanced Display Settings” and enable Virtual Desktop. This will use Wine’s “mini-Windows” desktop. To get a full screen experience out of this give the virtual desktop the same resolution as your display. This may not be to everyone’s taste, but I like the slightly cleaner look.
  6. If Scrivener’s UI is too large or too small you can also adjust the DPI via “Advanced Display Settings” in “Settings”. This works fine too, in fact better than scaling a native app.
  7. Creating a desktop icon now requires that you grant the Bottles Flatpak a permission override. If you try to do it via the menu the app will take you to a documentation page with the command for the override. The command is
    flatpak override com.usebottles.bottles --user --filesystem=xdg-data/applications You may need to sudo it.
  8. Changing workspaces or going to the apps drawer in Gnome with trackpad gestures will result in Scrivener crashing. Using keyboard shortcuts (super / super+A) for those will not cause a crash. This may be a Bottles thing and not a Scrivener thing.

Everything else is per the tutorial, including deleting the textospeech thing, and with the caveat that it is now necessary to use a “Custom” bottle and refrain from installing mono.

2 Likes

I wanted to edit my post above, but there is no edit option, so here goes another point:

  1. If you want Composition Mode to work (see 5.) and enable Virtual Desktop, you’ll find out that whenever your not in Composition Mode you’ll have a very unsightly top bar on your screen, very blue and very ugly, with the radio buttons for minimize maximize and close your active project. Well, you’re not stuck with that bar. Inside your Scrivener bottle go to “Legacy Wine Tools” and choose “Configuration”. Wine Configuration will open in a window that looks like Windows 95. There choose the “Desktop Integration Tab”, and you’ll be able to edit that top bar from there. There is an option to install a new (windows) theme, but you don’t need a theme at all. You can simply edit the colours of the items “active title bar” and “active title bar gradient” from the drop down menu. That’s enough to make the bar match your chosen Scrivener theme. I’d upload a screenshot, but I can’t upload images to a post either…
2 Likes

For what it’s worth, with regard to #8, the same thing happens using Lutris (ie, Scriv crashes when you use trackpad gestures). Also, it may be a Debian thing because I’m on Deb + Gnome DE whereas you’re on Ubuntu.

I am wondering if those using straight Wine without Bottles or Lutris have this problem, too? If not, then I’m going back to Wine.

PS: Click the little pencil to edit a post. :slight_smile:

I’m hoping to record a straight Wine tutorial soon. Both the Bottles and Lutris tutorials use Flatpak versions of the apps. Might be a non-flatpak version would play nicer with Gnome…

1 Like

What’s special about Flatpak, you think? All I know is they’re often a newer version and they have more stuff attached (dependencies and such, I think? I’m still pretty new at Linux).

Flatpak and snap are sandboxed, that means they are isolated from the rest of the system in a complex way (layers of permissions and bundled package dependencies). This makes them safer. BUT it introduces a myriad of utterly annoying bugs. I use both flatpak and snap on Ubuntu and Debian systems, and have faced numerous hard-to-track bugs. For example with OBS Studio there are hard-to understand framerate limit issues, for Blender issues with GPU support, for Arduino IDE some download issues for the many libraries used, and most recently and %$%^$ drove me mad, LibreOffice cannot work with fonts that are symlinked if it is a snap, but fine if it is a DEB (I use homebrew for linux to install fonts easily, which symlinks and it works everywhere except the snap). My experience has been terrible and it doesn’t surprise me there may be hard-to-track bugs when using a complex software tool like Wine…

1 Like