It seems that work has subsided enough for me to keep a promise. Because I can be long winded (I think it necessary) when explaining how and why I perform particular tasks, I have decided to write several successive posts on this subject because I think it will be valuable, both to new Sparky Linux users and to experienced Linux veterans.
Taking the time to explain hings always makes sense to people learning but the Linux pros have a tendency to overlook the obvious because they work so fast. So, if anything I discuss interests developers, moderators, and hardened Linux users, then by all means check it out. At least it might be entertaining.
Before starting, I want to publicly declare my praise and appreciation by thanking pavroo and any other involved parties for their fine work in taking the old Remastersys project and reworking it using YAD to make it a valuable asset and useful timesaver for Sparky Linux users. I also declare that at no time do I take credit for any of their work. I simply spent many hours (and I do many many) attempting to use this tool as a means to help me save time in my charitable work. A long and drawn out number of posts have been previously provided explaining what was happening with me. Check out this area of the forum for those earlier posts. And now, let's get started.
One more thought before starting. There are several forks of Remastersys by other parties as well as similar tools that can be used with success (under limiting circumstances). I have used them as well as the complicated and time consuming live tools in Debian. I will save the uses and reasons of concern for those tools in another series of posts. After I finish outlining Sparky-Linux-Sys. Remember, I take no responsibility for mistakes, warranties, etc. Sparky Linux provides the proper disclaimers. Always make backups of any important files before starting.
The first question is as follows. Why do I want to use a tool like Sparky-Backup-Sys? Well, I rework older pc systems and donate them to anyone that needs them. Recipients are churches, schools, volunteer groups, rescue groups, public or private service organizations, and any individual(s) that may be short of funds to purchase new and more sophisticated hardware. In doing this work, I found myself spending a tremendous amount of time installing Sparky, Debian, etc., and configuring each machine. The age of the systems average between seven to twelve years old. I have even configured a few older than twelve years old but not many.
Based on those facts, the need to create a standard setup and install would save me a huge amount of time and time is the most valuable asset we all have. Additionally, my work demands that I work in a virtual environment to create a desktop configuration that is truly tailored for older pc systems, laptops, and notebooks. Once finalized and created, I use the tool to create a hybrid iso file, burn it to blank digital media or a usb thumb drive, then promptly boot, test, and install Sparky Linux / Debian with a minimal touch up at the end.
ACTUALLY, in the beginning, "failure" kicked me in the teeth almost every time. I was so mad because of so much lost time that I decided to experiment and test continually until I discovered what was causing my problems.
I discovered that there were two main causes of my failures. (and I bet everyone else as well) One was out of my control and caused by a newer version of Busybox that apparently caused grief for many other people just as it had caused for me. The good news is that Busybox no longer presents a problem, at least not for me in twenty four installations.
The other was completely caused by a simple issue that should have been obvious to me but I overlooked it many times. As I spent time configuring Sparky Linux to simplify its interface and reduce the software not needed for my purposes, I was constantly using root privileges to delete, remove, alter files and system settings as well as add themes, icons, artwork, etc. In all of my haste, I kept forgetting that the root user (su) and normal system user accounts store deleted files, etc. in trash folders (directories) until permanently removed. While I always made certain that the regular user system baggage was cleaned and sanitized, I ignored the root user's discarded system mess because it is hidden from the regular user. Remember, system wide directories, utilities, configurations, deleted files need admin access to perform system wide house keeping. The discarded system junk was piled high and deep.
Since hybrid iso files are read only squashed file systems compressed into a single file to be executed in memory, they are governed and restricted by the iso9660 IEEE specification and Sparky-Backup-Sys which do not allow a final iso size to exceed 3.99 gigabytes because of system overhead.
I found after testing over and over that exceeding 3.5 gigabytes sometimes caused problems. What's the root cause of this fact? Invisible code execution? Who knows except to say that software can be peculiar in its behavior in real world conditions. So rather than experiencing more failures, I now limit the FINISHED file size accordingly: 3.5 gigabytes or smaller.
The simple rule is don't install and configure everything including the kitchen sink. Just install and configure the utilities, services, and applications needed for regular usage and installation. More can be added when and if the iso is used to install on hardware.
Continuing, because there exists some inconsistencies and incompatibilities between similar tools created and used by other parties, I recommend that you completely uninstall those tools. As an example for instruction only the following is what I use to perform the task.
sudo apt update
sudo apt purge theothertoolname
then the following
sudo apt-get autoremove
sudo apt-get autoclean
NOTE: Caution is in order when using autoremove because of unintended results with xorg and system wide connected components. An example would be anything related to X. Use the man pages for apt, apt-get options to read the commands I listed and their functions in housecleaning. Next, I installed the following simple utility available in the repos.
sudo apt install trash-cli
Once installed, use the following command to clear out the hidden trash leftovers from the root user's account.
We need to keep in mind that the Sparky-Backup-Sys tool will include system directories and their contents. If the root user's trash and discarded junk isn't removed permanently, it will cause the the hybrid iso file to exceed its maximum allowed size. Although the regular user's home directories and their files are not included in the iso build, the following will clear out and remove all related trash as well.
trash-empty (sudo is not needed) for the regular user.
(part-2 will be continued on the next forum post and continue where I left you)