2

I have extremely limited knowledge on all and everything surrounding Linux and Distributions. I wanted to and have created an Arch Linux install that is for writing text only. It boots up, lets me login, all black screen, white text, done. Save any texts written to USB.

Since other authors such as I am have shown interest in obtaining this system I have been trying to create an iso. I have tried archiso, an installation script, I tried switchting it all to NixOS, tried Ubuntus Cubic, in a last ditch effort I was able to clone my running system with Clonezilla into an image file that people ca then use clonezilla for to clone to their own system, but that is rather clunky as it requires two thumb drives and I have no clue wether or not the cloning will even work on devices with a storage capacity lower than 500 gigs (as that is the capacity of the original device.

I have googled, utilized YouTube, ChatGPT, asked around people, but the project is still dead in the water. I have a working system. All packages are there, all configs are done, is there any way for a noob like me to take this running system and squeeze it into an iso, or do you possibly have any other idea?

In case the list of packages is of any use: Grub Plymouth Ly focuswriter light udiskie awesome qt6ct

A few of the challenges are that not all of these packages are in the default repositories and I have made visual changes in plymouth, qt6ct and grub.

Ramhound
  • 41,734
  • 35
  • 103
  • 130
Deven
  • 141
  • 4
  • Consider doing things the easy way. Use a Virtual Machine for Linux. Download the ISO of choice, make new machine, and install it. That is what I do. – John Aug 20 '23 at 00:51
  • @John, from the question, it appears that no other OS is desired -- **only a means to write text to USB**. This might be a way for a writer to focus attention. It does *not* seem to be a request for a second OS. OP, please clarify if I am mistaken. – DrMoishe Pippik Aug 20 '23 at 02:02
  • back in the day there used to be a program called remastersys for linux. You literally ran it on a running install, and it's just convert it to one. Sadly it got killed off by internet drama - and that would have beem the best way to. – Journeyman Geek Aug 20 '23 at 08:18

2 Answers2

3

I am not sure if i understand this corrrectly, but it seems like you want to have a system that would instantly launch a text writing application after it started, in a most minimalistic way, saving everything typed in a file on an USB storage.

If so, you might have a look at the MX Linux distribution. Its live system is a downloadable .iso, as you already created a bootable system you get this. You mention all kind of systems, i have no clue what you use, but using Windows "Rufus" might be one of the best solutions to create bootable USB devices, using Ubuntu you can follow their guide:

  1. https://mxlinux.org
  2. https://rufus.ie/de/
  3. https://ubuntu.com/tutorials/create-a-usb-stick-on-ubuntu#1-overview

The MX live system creates storage space on the same USB it is running from out of the box. That storage can be accessed from the live system as well as from every other Linux or Windows PC you can plug this USB in (not sure about Mac OS).

So, by default you will have a bootable Linux system and the storage to place your text files on.

Also, you can change configurations and add software to this live system and make that changes persistent. https://mxlinux.org/wiki/help-files/help-mx-remaster/

That way, you can install a text writing application as you wish, maybe one of those can be configured to show white text on black background, if it doesn't already: https://www.makeuseof.com/best-distraction-free-writing-apps-linux/

And you could configure that the application you want to use would be started automatically and loading a file on the USB storage (refer to the programs documentation to load files on startup): https://tutorialforlinux.com/2019/12/18/how-to-auto-launch-app-on-mx-gnu-linux-visual-guide/

You can tinker around with this as long as it takes until the bootable linux from the USB device will suit your needs.

You can easily install this system to any computer, then.

And using the MX snapshot tool, you can easily create an image (.iso) of the ready configured and installed system, to transfer it to other PCs as well.

Not sure if that helps, but as far as i understand this might be a way to achieve what you are looking for.

xph
  • 360
  • 1
  • 3
  • 10
  • Thank you very much for your input. MX Linux seems just like what I needed. I was able to replicate the system within a couple of hours now, but cloning it into an iso file and booting it on a different system has proven two difficulites. 1: Any changes to the grub boot theme does not survive. 2: Ly relies on systemd, which apparently does not play well with the feature of saving your system into an iso file, so I am again, so close, yet far away from my goal, as I have yet to find a display manager that is similar in visual design to Ly. – Deven Aug 21 '23 at 03:33
  • @Deven: Well, if you config GRUB on a local installed MX, it of course will have to make changes when you create a bootable USB device from that, in order to get a working boot stick. This USB device will need a different boot configuration than your local disk, in order to work. Maybe you could write a shell script that will set GRUB as desired, put that on the USB storage and execute it after installing the system on another machine? – xph Aug 21 '23 at 12:32
  • And as you just want to have white text on black background in the most minimalistic way possible - why stick with a special writer application and not use another, that might provide just what you want but without such problems? Maybe there is a writer programm that doesn't rely on systemd, which isn't a thing to have with MX by default. – xph Aug 21 '23 at 12:32
  • the issue is not the writing software, it works just like it should. What I have an issue with is the display mananger/login manager of my choice relying on systemd, which works splendid until I use the snapshot feature, since that does apparently not support systemd – Deven Aug 21 '23 at 15:31
  • If I do it over a shell script (honest to God I never god a script to work as intended) then I need it to execute automatically on installation or after installation, because the installation file will be for authors that are even less tech literate as I am – Deven Aug 21 '23 at 15:32
  • Installing an OS and configuring it in a way that it behaves exactly as one wishes isn't something that could be done *without* any confrontation with tech, i guess. Especially when the desired result is a very special use case and nothing systems do out of the box. Good luck! – xph Aug 22 '23 at 08:59
1

take this running system and squeeze it into an iso

There is no "iso" involved in this. Stop focusing on it. If you want to put a Linux system on a USB stick, you're doing literally that: installing Linux on a USB stick. These have the same boot process and the same layout as internal disks – there's GRUB, there's a partition table, and so on – and fundamentally all that an "iso" is is a single-file prepared image of a disk1; which you don't need here.

So if you want a fresh, persistent Arch installation on a USB stick, you can pretty much follow the same instructions as if doing a normal installation: partition it with fdisk/mkfs, install with "pacstrap". You can create a second FAT32 partition to hold your documents in, so that they'll be easily accessible outside Linux.

And if you currently have Arch installed on an internal disk and want to transfer it to a smaller one (whether it is another internal disk or a USB HDD or a USB stick), follow roughly the same process but instead of installing Arch use cp -a or rsync to transfer the files of the existing installation to the new root and /boot partitions. A file-level copy has no issues with the destination being smaller; it'll miss non-file things like the bootloader, but you can re-do grub-install for that.

In the case of Linux distro ISO images, they're also set up to boot from a SquashFS filesystem instead of a standard partition, with all writes going to an in-memory overlay – but you don't really need that here, either. At most, just use noatime and make sure systemd-journald is set up with Storage=volatile so that it does not write to /var/log much.


1 (CD images were originally called "ISOs" because they contained an ISO9660 filesystem that CDs use. The output of archiso is still a weird blend of CD image and HDD image.)

u1686_grawity
  • 426,297
  • 64
  • 894
  • 966