It's all in the software!

I used Trilium Notes for over a year as my second brain. After setting it up similar to scrivener it puked on itself and I lost way too much work. Even it's backups were corrupted. From that point on, I have reverted to the tried and true LibreOffice.

I played with LogSeq for a while, and there were things I liked, but I just didn't stick with it.
I hear you. I often outline in Mellel, my word processor of choice. The Outline pane, like what Word calls the Navigator (I think), is my topic list.

My top level heading (auto-title, in Mellel-speak) inserts a leading page break, so each top level heading starts with a blank page.

I just love blank pages. They are to me what fireplugs are to dogs.
 
Just a heads up for anyone who uses Scrivener - did you know you can buy (very cheaply) themes for it on Etsy (probably other places as well)? I hated all of the pre-existing themes on it and had to just adjust tones on light mode with my laptop settings to be able to use it as much as I do (dark mode gives me migraines). Yesterday morning I bought some themes and loaded them, and it doesn't hurt my eyes anymore. At all. I am overjoyed. I had no eye strain at the end of the day yesterday for the first time ever.
 
Just a heads up for anyone who uses Scrivener - did you know you can buy (very cheaply) themes for it on Etsy (probably other places as well)? I hated all of the pre-existing themes on it and had to just adjust tones on light mode with my laptop settings to be able to use it as much as I do (dark mode gives me migraines). Yesterday morning I bought some themes and loaded them, and it doesn't hurt my eyes anymore. At all. I am overjoyed. I had no eye strain at the end of the day yesterday for the first time ever.
Nice! One of my favorite YouTube channels, 58Keys, is run by a British writer, William Gallagher. This month is Scrivener month.

He is very Mac-centric, but the uses and workflows for writing tools apply universally. There's also nothing at all wrong with dry, self-deprecating gentle British humor. Sorry, forgot the spirit of the moment, humour.

You'll find Scrivener highly regarded in his videos. The 58Keys channel can be found at 58keys William Gallagher.
 
Does anyone use the current version of Scrivener for Windows in an emulator on Linux? If so, does it work well for you and with any particular distro? Are there other options for running it in Linux?

I'm asking because ye olde laptop needs wiping for a hundred reasons and I can either have a more stable fresh install of Win 10 or a much more stable and updateable version of Linux. I'd prefer the latter but I am just trialling Scrivener and I like it so will suck up Windows a bit longer if I need to but I'm otherwise so done with them and all the subscription, web-based, never actually own anything you pay for nonsense. It's the reason I stopped using apple way way back when and I'd really rather ditch all of it.

Full disclosure: my partner is the one who'll actually be doing the install. I have very limited knowledge and stopped listening about 10 years ago after I could no longer force Windows 7 to keep going. I just want to get an idea of what's possible in a space where I (broadly :devilish:) trust people.
 
I managed to install Scrivener in Bottles in Linux Mint.I use Bottles to run all sorts of nonsense (Battle Brothers, Fritz 13, various time waster games). It does pretty well, perfectly sometimes. Battle Brothers is cool and runs flawlessly. I download GOG games and just cram them in there.

The trick... I have a new monitor. I had to change the graphics settings of Bottles because ... well you can tell sometimes that the programmers are old school with their setup. :D I set it to 192 DPI, problem solved. Otherwise I was typing in a postage stamp sized window.

Scrivener freezes on launch in Bottles, this is apparently because it's trying to find a windows texttospeech program, which isn't going to be there. The trick there is to go to the Scrivener folder. You can click on the program in Bottles once it's installed, and choose the Browse button -- "browse path" I think it says when you hover on it, it'll open the deep rooted path for these files (hard to find in linux, this is the best way to get to it). Rename texttospeech folder as texttospeech_old, or just delete it. Then it runs. God, Scrivener is $60 now? At least it's one single charge and not "rentable," which is all subscription services are. You are renting software, very sad.

Texttospeech mainly messed it up, but it's a standard Windows thing to load.Scrivener wants it but doesn't need it.

I only ever really used Scrivener to do Shunn formatting. But man, I can just automate that with a little javascript page now... That's the way to go for me. Take an *.md file and convert it to RTF, Shunn format. But that's a different question, haha. Scrivener seems to work.

1780105139311.png
 
Last edited:
I'm asking because ye olde laptop needs wiping for a hundred reasons and I can either have a more stable fresh install of Win 10 or a much more stable and updateable version of Linux. I'd prefer the latter but I am just trialling Scrivener and I like it so will suck up Windows a bit longer if I need to but I'm otherwise so done with them and all the subscription, web-based, never actually own anything you pay for nonsense. It's the reason I stopped using apple way way back when and I'd really rather ditch all of it.
Windows 10 is out of support, and shouldn't be used at all unless you are eligible for the ESU program. Even then, you have to consider that the program will end soon, so what will you do when that happens? It's best to make a long-term decision now.

It's possible to use Windows 11 with patches, but I wouldn't since it's not officially supported on older hardware and Microsoft will always be trying to put a stop to it through their usual digital bullying tactics.

Linux (particularly distributions like Mint and Ubuntu) are best for older hardware. If Scrivener is all you want, do the methods discussed above. Updates might break it in the future though so I'd be careful around those.

I'm not sure why Scrivener doesn't have support for Linux. The Windows version is written in Qt (as far as I understand) and the whole point of Qt is that it's extremely easy to port across supported platforms. The only reasons I can think of is the codebase having non-Qt dependencies and any other platform dependent quirks (like some sort of hack with WinAPI).

Scrivener did actually release a version for Linux. It was a beta that they abandoned, probably because of their Linux userbase being too tiny to justify. They released AppImages of the Linux versions for free to the public and you can actually find them with a bit of searching. Be warned though, it looks awful, and it might have bugs.

For me, I am actually developing my own software. I already did for my university thesis. It works and has similar semantics to Scrivener, but it still needs quite a bit more work to reach a good level of usefulness. The ultimate tool is the one that you make yourself because you can craft it to suit your exact needs. I won't be releasing it to the public because I don't want to deal with people shouting at me for bugs. It's just for me!

There is also something called novelWriter. It's written by Veronica who found the lack of Linux novel writers disappointing. I suggest you give it a shot.
 
There’s older versions of scriv that have Linux versions up to 1.9 i believe

You can also run the MS version of scriv 3with the Wine compatibility layer ( not technically an emulator but I’ll leave it to folk like @ps102 to explain the differences )

Personally I find scriv very overrated I do most of my writing in a 15 year old Fujitsu running Ubuntu and using libre office
 
You can also run the MS version of scriv 3with the Wine compatibility layer ( not technically an emulator but I’ll leave it to folk like @ps102 to explain the differences )
All people need to know is this hierarchy (fastest to slowest):
  • Using a compatibility layer to run software written for another OS. Super fast. Nothing is emulated. Wine literally stands for "Wine Is Not An Emulator". But not all programs can work, or if they work, there can be bugs.
  • Using a virtualized machine to run a guest OS and execute the app there. Mostly virtualization, not as much emulation. The main advantage here is that most Windows programs will run much better. But you sacrifise performance, and you also essentially run a secondary operating system that you have to switch in and out of. Look into VirtualBox, VMWare or Qemu KVM if any of this interests you.
  • Emulating a system, running the host OS on the emulator, and executing the app there. Everything is emulated. Slow as hell and not recommended unless it's the only option.
Read below for why this is the case. Be warned that super long technical explanations follow.

First, most modern computers have a microprocessor that executes instructions. All programs are basically written in CPU instructions (assembly language, which assembles down to bare machine code). Forget about what you might know of programming languages like C or Java. Most of them (at some point) also compile down to machine code. So, don't think about them for now.

Every CPU's architecture (how the transistors inside are all "wired" up) is different, so instructions vary per processor as well. The x86 architecture is common in home PCs, the ARM architecture is most common in phones. There are other architectures but literally, most people don't care. These are the two main ones.

The solution? You write a computer program that acts like the foreign CPU, reads the foreign instructions, and essentially "translates" them to your computer CPU's own instructions. This program is what we refer to as an "emulator". But emulators are extremely complex computationally. They literally have to act like the foreign CPU in order to do "the translations". That takes time, which means that your emulated CPU will be substantially slower than your real physical CPU.

The smart among you might ask, "Okay, so, what about a situation where I install Linux on my former Windows PC and just run the program there. Same CPU. No need to emulate, right?"

Well yes, but actually, no.

Programs aren't just written with CPU instructions. That's an oversimplification. Everything is an instruction but those instructions might also programmatically be interacting with the host operating system the program runs on. The operating system standardizes a lot. It provides programmers with Application Programming Interfaces (APIs) they use to do useful things, like actually "draw" the interface of the program to your screen. "Listen" to your keyboard input and clicks. "Interact" with the Internet. So on and so forth. Essentially, the programmer "calls" (that's the real term) parts of the API to make the commands.

Here is a real API call because I think those help a lot (taken straight out of the Microsoft WinAPI docs):
C++:
HWND hwnd = CreateWindowEx(
    0,                              // Optional window styles.
    CLASS_NAME,                     // Window class
    L"Learn to Program Windows",    // Window text
    WS_OVERLAPPEDWINDOW,            // Window style

    // Size and position
    CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,

    NULL,       // Parent window 
    NULL,       // Menu
    hInstance,  // Instance handle
    NULL        // Additional application data
    );

This looks like a lot. But all we have is this in reality CreateWindow(). That's literally the summary of the above. All the extra code you see is inside the paranthesis. Those are "parameters" of the API call, each seperated by a comma. They provide additional "information" on what the caller "wants" to do.

The WinAPI just doesn't exist in Linux. Linux has no "idea" what CreateWindow() "means". Linux has it's own APIs, and naturally, Linux programs are written with those APIs.

That's where Wine comes in. It's a "compatibility layer" in that it basically provides (some) of those missing APIs. It takes every API call the Windows program makes and calls the equivalent Linux API. But it's not that simple, of course. Between those two steps, it needs to implement some code in order for the "translation" to be succesful.

And of course, it often isn't perfect. Either the APIs it implements aren't perfectly accurate, or they are missing altogether. Hence why you get crashes, programs not working, etc. It's fast because you execute directly on the machine, but it's functionally incomplete because it's practically impossible for the Wine team (which work for free basically) to do everything in an ideal way.

So, what about virtual machines like ones created with VirtualBox? Those are an interim solution between what I just talked about. They basically create a virtual computer that is only partially emulated. Crucially, the CPU is not emulated at all. Any CPU instructions that occur inside the virtual machine are passed to the real computer CPU to be executed. The only things emulated are other computer parts, like the storage controller (SATA), network interfaces, so on.
The emulators that I was talking about earlier are identical except in the part where they must also emulate the CPU, which is what mainly adds all the slowness.

The idea with virtual machines are, you just run the operating system your app is compatible with and use it there as normal. But it's not convenient at all because you essentially run two operating systems, and that takes resources. You must also switch between the two operating systems frequently, which is just annoying. But you do gain accuracy. Your app is basically guaranteed to work unless it specifically refuses to run in a virtual machine.

Do bare in mind that not all emulators emulate the whole operating system to run an app. MacOS's Rosetta 2 emulator is efficient because it's macOS x86 to macOS ARM and also because it works with Ahead of Time compilation. I won't get into what that means, but do know that these sort of emulators are super rare. In general, emulation is largely irrelevant to this thread topic. I imagine most people just want to run Windows programs on their Linuxes boxes here.

For me personally, I don't want to deal with all that at all. I do run Linux and I just use Linux apps with it. I do have a Windows virtual machine for rare edge cases.
 
Good ho, I use a lot of Linux but most of the what and why is just words to me. I run a Mac for photoshop because Gimp just isn’t the same,
 
Lots of really helpful replies and information everyone, thank you.

It's going to take me a while to read through properly so I can actually digest it :)

Crux of it seems to be I should definitely bin Windows though, probably for Ubuntu, and explore both Bottles and WINE. I've got a little awareness of having used WINE before a long time ago, too long ago to be useful but fortunately it won't be my brain setting it all up. I should've probably done it at day 1 -- I hate Win 10 and 11 isn't much better -- but I was too much in love with my laptop to want to roll the dice back then. Still am. It's 13 years old and a brick but it's awesome so I'm keeping it as a desktop.

Has anyone used O&O ShutUp10? I feel like I could have been a lot less frustrated with Windows if I'd known about that earlier :ROFLMAO:
 
I'm the same way. I give up Windows when Win11 was announced. Five years sober. Though I have to use it at work and deal with servers, Active Directory nonsense, powershell fun.... It'll never go away. But at home, it's only linux. I'm not using it to play with the OS like all those youtube linux guys. I swear that they don't do any actual work. They just adjust menu settings and try to feel like they're escaping the matrix. I mean, if the only point of your OS it to play with the OS, then that's rather silly. If you want converts then show people work being done, not work being prepped.

Me though? Battle Brothers, haha. I want to play that game again now...
What was the other one? Oh yeah, Magic Forge. Imagine Magic Arena, but its free. You run around like in the old Mircoprose Shandalar game and duel for cards. How many cards, you ask? The answer is Yes!

You cannot believe how many damn MTG cards they put in there. Thousands and thousands and thousands. It is surreal. How can hobbyists essentially code every card ever created into an AI and the pros can barely manage the current sets? And then they drain your wallet with various lootbox schemes.

Anyway for writing, I use Typora on it. I like the minimalist editors. Though I've been using TexStudio lately and setting up an old school dnd module. .

I just finished a piece in Typora just yesterday. 3000 words. Great fun! I guess i should go finish revising that thing.
 
Last edited:
Back
Top