This post describes the steps I took to install and configure Linux Mint 17.3 Xfce on an old Dell laptop. The installation effort was not always simple and straightforward. Some parts of this story benefit from the fact that I had to make multiple attempts before it worked as desired.
Deciding How to Proceed
Shipping Date: 8/3/2006
CPU: Intel Core Duo T2400 (1.83 GHz, 32-bit)
Operating System: Windows XP Media Center Edition (32-bit)
Hard Drive: originally 80GB, upgraded to 256GB
RAM: originally 512MB, upgraded to 1GB
Resolution: 1280 x 800 pixels
Ports: USB 1.0, Secure Digital (SD), Ethernet, Firewire
For perspective, Passmark’s CPU Mark benchmark gave that Core Duo processor a score of 799, while the score for my desktop’s Intel Core i7-4790 CPU was 10021. And then there were those USB 1.0 ports. In other words, this was an old, slow, feature-limited laptop. Brief inquiries had indicated that the CPU could not be significantly upgraded in any event, and that even a moderate upgrade might run into heat issues. Likewise, RAM expansions were limited, given only one RAM slot and the 32-bit access limit of less than 4GB without PAE. These RAM and CPU limits suggested, in turn, that this machine would not warrant an investment in a solid state drive (SSD). In short, hardware options were limited.
The Windows XP installation on this machine had problems; besides, Microsoft was no longer providing updates (for security or otherwise) on WinXP. It was time to choose a new operating system. Consistent with a general interest in reducing dependence on Microsoft, it seemed advisable to try a version of Linux. The version chosen for this machine would preferably offer a responsive and yet aesthetically appealing XP-like experience requiring neither extensive Linux fluency nor use of virtual memory (i.e., writing data to disk when RAM is full).
A look at lightweight Linuxes led to impressions that some (e.g., Puppy) might be too minimalistic and that, in the mainstream, the Mint family might be more suitable than the Ubuntu family. Within Mint, there was a choice between the branch based on Ubuntu and the Linux Mint Debian Edition (LMDE). I chose the Ubuntu branch because, while some seemed optimistic about LMDE, others were not. In the current (17.3 “Rosa”) version of Mint, this meant a choice among Cinnamon, MATE, and Xfce flavors. Various sources indicated that Xfce was particularly suited for older computers, and was also a good replacement for Windows XP. Xfce could apparently get by on less, but the Mint blog recommended 1GB RAM and 20GB disk space. This old laptop could supply that.
Installing Linux Mint Xfce
For the reasons just described, I downloaded the Linux Mint 17.3 Xfce installation file, used File Check MD5 to calculate its MD5 value, and compared that value against the one shown on the official download page, to make sure my download hadn’t gotten corrupted anywhere along the way.
The download file was an ISO. Microsoft pointed toward three different ways to install software in ISO form: burn it to a CD or DVD with a burning tool like ImgBurn (or use something like YUMI to install it on a single- or multi-boot DVD or USB drive); mount it as a pseudo-drive in Windows, using something like Virtual Clone Drive; or extract the files from the ISO and run them in Windows. I couldn’t use options 2 or 3 because this particular ISO contained a Linux operating system. There were things like Wubi that could run Linux, or something resembling Linux, inside Windows. But I was seeking a full Linux installation to replace Windows. So my installation approach could not begin inside Windows. I was going to have to install the ISO on a DVD or a USB drive, and begin the installation process from that drive. A Linux Mint community tutorial advised using Universal USB Installer to put the Mint download on a USB drive, so I did that.
The BIOS on this laptop was apparently already adjusted to look first at the USB drive rather than at the internal hard drive, so I was immediately able to boot with the USB drive. Within a minute, after flashing several other screens that seemed to be displaying aspects of the bootup process, the USB drive gave me a desktop that looked about like this:
I double-clicked on the Install Linux Mint icon at the upper left corner of the screen. It began the installation process. In that process, it detected and successfully connected with my wireless router. It told me that the process would require a connection to the Internet, so I started the Firefox web browser from what would be the Start menu in Windows (i.e., I clicked on the icon at the lower left corner) and verified that I was able to view current news stories online. I felt that this part of the installation could have been a bit smoother — that there was no reason to tell me to go online since it appeared that the installer had already done so.
Next, the installer gave me a screen titled “Installation Type,” with this explanation: “This computer currently has no detected operating systems. What would you like to do?” It offered these options:
- Erase disk and install Linux Mint. Warning: This will delete any files on the disk.
- Encrypt the new Linux Mint installation for security. You will choose a security key in the next step.
- Use LVM with the new Linux Mint installation. This will set up Logical Volume Management. It allows taking snapshots and easier partition resizing.
- Something else. You can create or resize partitions yourself, or choose multiple partitions for Linux Mint.
A search turned up no webpages precisely addressing these options in Mint 17.3. A broader search led to a handful of webpages that seemed to have relevant information. A few were dead, or were blocked by my antivirus software. The InstallGentoo Wiki offered a moderately detailed guide to installation, but not much specific information on this particular screen. The same was true of guides offered by Tecmint and Land of Linux. The Learn Linux Online guide said, “The encryption is not really necessary unless you’re a security nut.” A search led to a Reddit discussion in which several participants advised against encrypting, especially for beginners. Another search led to assurances that encryption could be added later. A Linux Mint community guide seemed to confirm that encryption could involve some complications.
Regarding the LVM option, the Learn Linux Online guide said that it “requires many extra steps if you ever have to do recovery.” A search led to a How-To Geek webpage agreeing that “LVM is potentially more complex, which could cause problems if you need to recover your data later — especially if you’re not that experienced with it.” Geek said that LVM would not noticeably impair performance, and that the principal benefit of LVM was that I could do things like “resize partitions, create snapshots, [and] merge multiple disks into a single logical volume” while the system was running, instead of having to reboot from a live CD or USB drive to do that sort of maintenance. It wasn’t as though I were a system administrator, needing to keep the servers running 24/7. I was usually fine with rebooting to create a drive image (the equivalent, I guessed, of “snapshots”), and letting that sort of thing proceed overnight or while I went to lunch. What was more likely was that, with LVM, I would be one of those (1 2 3 4 5) guys whose LVM system got screwed up. If needed, it appeared possible (albeit potentially difficult) to convert to LVM later.
Among the four choices thus presented by the installer, I selected the “something else” option and clicked Continue. This put me at a screen where I had to list the partitions to be created. The process for doing this involved selecting the free space where I wanted to create the partition, clicking the plus (+) button, and providing details on each desired partition. For each partition, as I went down the list, I specified a size, made it a logical rather than primary type, put it at the beginning of the remaining space, chose the ext4 file system (except for swap), and chose its mount point (i.e., its Linux name). Instead of the root partition and swap partition that I would have gotten by default, according to a Linux Mint Forums tutorial, I decided (based on various sources, as detailed in a separate post) that the optimal arrangement would be as follows, entered in this order:
- boot: 251MB (i.e., 250MB), mounted as “/boot”
- root: 50002MB (i.e., 50GB), mounted as “/”
- home: 20002MB (i.e., 20GB), mounted as “/home”
- DATA and BACKROOM: for now, just one big unformatted partition
- swap: 2001MB (i.e., 2GB, twice the size of RAM), swap area
Those seemed to be optimal sizes; but on this smaller machine, eventually I downsized root to 30GB. As shown in that list, the desired sizes were not precisely matched with the actual sizes. It appeared that some space was being used as overhead. I entered the MB values needed to give me the desired GB round numbers shown in that list. I said “Do not use” for the DATA partition because the installer required a mount point, and I did not want it to be mounted as any of the options provided (e.g., swap, /home). Instead, I would have to revisit that partition later.
With that information entered, I clicked on the Install Now button. I had to indicate my timezone, preferred keyboard, and other information. The installer required me to enter a password in order to continue, so I chose “password.” Then I chose the Log In Automatically option. (Other sources, such as WinAero and xenopeek, offer graphical representations of these screens.) At that point, the installation process began. It was done within about ten minutes. I clicked Restart Now. When the machine restarted, it booted from the USB drive again, so I had to restart again and pull out that USB drive before the boot process got underway.
Updates and Repositories
The machine booted up and gave me a starting screen almost identical to the one pictured above. My next step was to install updates. To do this, I went into the Start button (as it was called in Windows, a/k/a the Home button in Ubuntu) at the bottom left corner of the screen. From its menu, I chose System > Update Manager. There, I made sure all available updates were selected, chose the local mirror option, and then clicked Install Updates. That brought up more updates, so I repeated the process until it finally said my system was up to date.
Next, I needed to enable the system to download and install more software. This called for an understanding of four potentially overlapping or confusing tools in Start > System. Those tools were Software Manager, (Synaptic) Package Manager, Package Installer, and Software Sources. I guessed that most if not all of these had to do with the Linux method of installing programs. Instead of going to a website (e.g., Adobe) or an online store (e.g., Microsoft, Amazon) to find and download software, software in Linux (being mostly free) would mostly be distributed through a small number of central sources, called repositories. So my question at this point was, how do these four Start > System tools relate to Linux software repositories?
At this time there appeared to be no official English-language user guide for Linux Mint 17.3 Xfce, but there was such a guide for the Cinnamon flavor. Page 34 of that Cinnamon User Guide commenced a discussion of these and related matters. The Guide (p. 39) characterized Synaptic as an alternative to Software Manager, for purposes of installing software; it seemed to say that Synaptic would have applications that Software Manager lacked, and that Synaptic was also better for installing multiple applications at once. On the other hand, as the Guide (p. 40) pointed out, I could see that Software Manager grouped its offerings under topical headings (e.g., Internet, Office, Games). So if I had no idea what program I wanted, but knew I wanted something related to Office, I could browse around in there. But this was not how I would decide which software to install. Invariably I would be responding to a review or some other pointer to a specific program.
It seemed, in short, that Software Manager should be moved from the primary Start > System menu to a secondary submenu. (I would have to postpone that task until later, when I had a better understanding of the Start menu.) For the most part, consistent with prior experience and the remarks of others, I expected to know what software I was looking for before I started, and I expected to choose and install the desired software using Synaptic.
That explained Package Manager, but what about Package Installer? The Guide didn’t seem to have anything on it. Within Package Installer, the Help > About menu pick revealed that this was actually GDebi, and offered a link to a webpage on a website owned by Canonical Ltd., creator of Ubuntu. The webpage said, “gdebi is a simple tool to install deb files,” where “deb” was short for Debian Linux. So should I use Package Installer to install deb files on this Mint computer? A search led to this comment: “If you are an end-user, I suggest not mixing and matching packages from differing distributions . . . because the packages will install, but the file locations and scripts may not adhere to the distro’s ideologies and scripts (the distro’s “way of doing things”). Another comment said,
The Ubuntu based version [of Mint] is guaranteed to work with Ubuntu packages and the LMDE is guaranteed to be compatible with packages from the Debian repository. Installing packages from a different distribution might work in some or many cases, but fail in others. It is not officially supported.
There might be times when a user would want software not available through Synaptic, and also not available via Ubuntu — or for some other reason might want to use GDebi. But on this little old computer, that appeared very unlikely. So for my Mint installations generally, and certainly for this installation in particular, it appeared that the Start menu link to Package Installer should be renamed GDebi and moved, as above, to a submenu.
Of the four Start menu items listed above, I had now dealt with three. What about Software Sources? Here, again, the Guide seemed to offer nothing. A search led to a Working With Linux (WWL) webpage that discussed the five main options offered in the Software Sources dialog: Official Repositories, PPAs, Additional Repositories, Authentication Keys, and Maintenance.
Under the Official Repositories tab, Mint came with certain Mirrors already selected. One mirror was for the Main (i.e., Linux Mint) repository, and the other was for the Base (i.e., Ubuntu) repository. The Base referred to “trusty.” This was short for “Trusty Tahr,” the code name for Ubuntu 14.04 LTS (i.e., the Long Term Support version released in the 4th month of 2014). In other words, this version of Mint was designed to run software that was specifically designed for Mint, as well as software that was designed for the April 2014 release of Ubuntu. Ubuntu explained that its LTS versions came out every even-numbered April and were supported for five years.
A WWL companion page indicated that downloads would tend to be faster when the mirrors were geographically nearer. I clicked on the address shown for the first Main mirror. That opened a dialog listing a number of mirrors. The dialog then ran tests and listed those mirrors in order of speed. The one at the top of the lits was reported to be significantly faster than others, so I selected it and clicked Apply. Same thing for the Base mirror: by default, it was in Britain, and that obviously got changed too. I didn’t necessarily wait for all these tests to finish; I could see by the flag icons at the left that some were far away. If the results were at all competitive, I erred in favor of the one located nearby. I didn’t change any of the other options on the Official Repositories tab.
Next, under the PPAs tab, nothing was listed. PPA was short for Personal Package Archive. MakeUseOf explained that PPAs provided the latest software quickly. So if a user knew that s/he wanted the latest version of Program X, and if that version had not yet been cleared through the official Mint or Ubuntu repositories, the user could proceed to find a PPA offering that program, and could list that PPA here. But there were risks. As one source said,
PPAs are for non standard software/updates. They are generally used by people who want the latest and greatest. If you are going extra lengths to get this kind of software, then you are expected to know what you are doing. The selection in the Software Centre is ample for most human beings.
Another commentator at that same webpage said that the main problem, when using PPAs, was not malicious software; it was the risk of conflict between programs, potentially leaving the system unable to perform certain desired tasks. As noted by PC World (Hoffman, 2015), “Anyone can open a PPA and host software. . . . You have to judge whether a PPA is trustworthy.” That article offered Wine (i.e., the best-known tool for running Windows programs in Linux) as an example of a stable program that the user would get through a PPA rather than through the official repositories. A search in Software Manager seemed to confirm that Wine was not available there.
I believed Wine would be useful, so I decided to use it as a test case, to learn how to use the PPAs tab in this Software Sources dialog. The Wine webpage listed Ubuntu but not Mint, so I followed that link. The instructions began by telling the user to enter a command:
sudo dpkg --add-architecture i386
That command wasn’t essential in my case, because this Dell laptop was a 32-bit machine. But this raised the question of how to enter commands in Mint. I saw that the taskbar, next to the Start button, had an icon for Xfce Terminal (Terminal Emulator), and there was also one such icon in Start > Favorites (and two in Start > All). So the answer was, Terminal was where the user would run such commands. The Wine instructions then required me to add the Wine repository. In the Software Sources > PPAs tab, this called for a click on the “Add a new PPA” button. There, I typed what the Wine webpage showed me: ppa:wine/wine-builds. The system supplied a URL, and I clicked OK. This added both the wine-builds and wine-builds (Sources) PPAs. I did not think I needed source code, so I removed the latter. The instructions on the Wine webpage then required me to update packages and install the software. I postponed those steps. They appeared to be taken care of when I used Synaptic (below).
Next, in Software Sources, there was the Additional Repositories tab. Two were already listed: CD-ROM and Getdeb. The Getdeb webpage indicated that its mission was “to provide the latest open source and freeware applications for the current Ubuntu Linux release.” Neither CD-ROM nor Getdeb were enabled at this point, and I left it that way. A search did not point immediately to any additional repositories for which I might have an obvious need, so I left it at that.
The next tab, Software Sources > Authentication Keys, contained one entry: Launchpad PPA for Wine. My understanding was that this had been added when I added the Wine PPA. It seemed that many preferred to add PPAs and these keys via command line, rather than use Software Sources. I guessed that Software Sources would record those entries as well. Finally, the Maintenance tab in Software Sources offered solutions to four specific problems. I did not have those problems and therefore did not click on any of those buttons. At the upper right corner of the Software Sources window, I saw a button to Update the Cache. That sounded like a good idea, so I clicked on it.
Those steps seemed to take care of what I could and should do in Software Sources. The conclusion was that, in Software Sources, I would specify the lists of programs available to my system; and then, in Synaptic Package Manager, I would choose among those packages to indicate which ones I wanted to install.
Choosing and Installing Software via Synaptic
Having specified my desired sources of software, it seemed to be time to choose which software I wanted to install. Multiple sources (e.g., MakeUseOf, ZDNet, Beebom, Linux Mint Community) offered lists of recommended packages. The ones I found most interesting, useful, and/or commonly mentioned were Firefox, Chromium (an alternative to Chrome, which was not available for a 32-bit operating system), Opera, Palemoon, Ubuntu Tweak, LibreOffice, Abiword, Audacity, GIMP, Lightworks, Thunderbird, Pidgin, Skype, VLC, Gparted, Lastpass or Keepass, Tor, Gufw, Pinta, Darktable, PhotoQt, Miro, Wine, VirtualBox, PlayOnLinux, DropBox, DOSBox, Nano, RecordMyDesktop, Testdisk, and MPlayer. (As described in another post, I found that Google Earth would not run on this machine.) If I needed others, I would probably choose among the extensive sorted lists of Linux packages provided by Gizmo, Gentoo Wiki, Bleeping Computer, and Dedoimedo.
Among those recommended programs, some (e.g., VirtualBox, Lightworks) would probably be a bit heavy for this little old computer. Then again, the installation already did include LibreOffice 5, and I briefly verified that it ran and was able to do things. So, in Synaptic, I clicked the Reload button at the left end of the menu, and then searched for all of the programs named in the previous paragraph. (Note: searching in Synaptic could be confusing. A search started, not by typing the desired name into the box next to the Search button, but rather by clicking Search first, and then typing the desired name into the new dialog.)
My Synaptic searches demonstrated, as expected, that some of the packages listed above were already installed (notably Firefox, GIMP, Thunderbird, Pidgin, VLC, and Nano). Some searches yielded additional information. For instance, LibreOffice seemed to be mostly but not entirely installed, presumably because the uninstalled portions were deemed too heavy for Xfce. Some searches failed, including those for Chrome (as distinct from Chromium), Palemoon, Ubuntu Tweak, PhotoQt, Lastpass, and Lightworks. (Where applicable, I did try the expected Linux names, such as ubuntu-tweak.) Where searches succeeded, I usually opted to mark the package for installation. Then, when I was done searching and marking, I clicked the Apply button in Synaptic. That ran for a while, downloading and installing software. Then I closed Synaptic.
Then it occurred to me that, for this laptop, I probably should have searched for lists of best light programs for Linux. A search of that nature led to a List of Lightweight Applications That Xfce Users Recommend. Instead of, or in addition to, programs already mentioned, that list included LyX rather than Abiword (though the latter seemed to be more highly rated by users generally), Transmission, Liferea, Midori, OpenSSH, Audacious, HandBrake, SpiderOak, Meld, Hardinfo, Inkscape, and Dia. Back in Synaptic, I searched for most of those. Already installed: OpenSSH. Not found: SpiderOak. Otherwise, I installed most of the rest.
I was curious how I was doing so far, in terms of using the space on my programs drive — or, more accurately, in the / (root) partition. I went into Start > Accessories > File Manager. In the left-side panel, I chose Devices > File System > right-click on Root > Properties. It said I had 21.9 GB of 29.4 GB free. The latter number seemed to refer to the 30GB root partition I had created upon installation. So that was good. I had lots of space to work with.
I also wondered what was happening with these programs I was installing. In Windows, the icons that I would click to run them would tend to pile up in the Start menu until I resorted them into the desired folders. That was not the case here. I noticed that Wine had added an additional item to the first level of the Start menu, including itself along with broad categories like Games and Internet. But the others seemed to have been sorted into submenus, probably matching the categories in which I would find them in Software Manager. For instance, Abiword’s startup icon was in the Office menu, and similarly it was listed in the Office category in Software Manager. (The startup icon was unhelpfully labeled as simply “Word Processor” — another item to be revised, when I got around to editing the Start menu.) Similarly, Audacity’s startup icon had been placed in the Start > Multimedia category (and labeled as simply “Sound Editor”). I guessed that I would have to do some manual sorting of startup icons, for packages not included in the official repositories.
At this point, it seemed I had exhausted most of what I could do, in terms of installing officially approved software. I, or the eventual user, was going to have to try out these various programs, decide which were best, and shelve (i.e., subordinate or remove the Start menu icon) or uninstall the rest. About that, EasyLinuxTipsProject warned, “Never [uninstall] any application that’s part of the default installation of Ubuntu or Linux Mint . . . [because] the default installation is an intertwined system that’s dependent on shared supporting files.” Others seemed to think that advice was a bit too strong. A discussion in Ubuntu Mate Community advised against removing desktop or driver components. Another discussion advised against proceeding with an Ubuntu uninstallation if starting to do so produced a warning that “future updates will not include new items in the Ubuntu desktop set.” A Reddit exchange said that problems would arise only “when uninstalling system and config programs.” EasyLinuxTipsProject also warned against using cleaning applications like BleachBit, which could reportedly do more harm than good. Other advice related to cleaning and uninstalling: make sure the system is backed up before proceeding, and experiment with drastic or risky measures in a virtual machine, or on a test computer, before implementing them on a production machine.
According to PC Magazine, “cloud computing means storing and accessing data and programs over the Internet instead of your computer’s hard drive. The cloud is just a metaphor for the Internet.” In other words, the user’s local computer would steer the computing project, sending instructions online over the Internet; but the programs would be housed in, and would run on, someone else’s computer, and then the results would be fed back to the local computer.
For a little old computer, it seemed the cloud could be a source of great computing power: let the huge servers handle those calculations! In pursuit of such possibilities, a search led to indications that the cloud now held tools for big-league computing in a variety of fields (e.g., statistics, accounting, project management), along with many (e.g., 1 2 3 4 5 6) lists of best cloud tools. The (sometimes expensive) tools recommended by those sources included Quickbooks, QuickBase, Google for Work, Microsoft Office 365 or Office on Demand, Trello (a PIM), Salesforce, and Slack, as well as cloud storage and/or backup sites like Dropbox, OneDrive, Box.net, Dmailer Backup, SugarSync, Cloudme, SkyDrive, Insync, and iDriveSync. Other (1 2 3) sites warned about security risks when putting data into the cloud, and offered suggestions for appropriate data encryption tools.
There seemed to be many worthy free cloud tools. ZDNet explained how Google Drive had become the core of Google Docs and also of third-party programs (e.g., WeVideo, Docusign, LucidChart, HelloFax). Going far beyond that, Gizmo listed dozens of what it considered the best free online applications and services, broken into categories. Some of these would plainly take the load off the local computer. Examples that stood out for me (beyond the ones that would seem obvious, or that would emerge in a standard search, such as YouTube, PayPal, TED, Quizlet, Khan Academy, and various online dictionaries) included Clip Converter, TheYouMP3, Keepvid, FullRip, Midomi, Microsoft Office Online, a variety of PDF and image creation/editing tools, Free OCR, Evernote, Instacalc, iConvert iCons, Free File Convert, ezyZip, SendAnywhere, PageZipper, Ookla Speedtest, WeatherSpark, SpamGourmet, Scrim, PrivNote, OpenDNS, and net2ftp.
Collectively, these cloud-based tools were sobering. More than ever, it seemed possible to do much of one’s work in the cloud. Of course, since I had no experience with most such tools, it remained to be seen whether they would merit inclusion in the stable of key programs on a Linux machine. If they did pan out, it would be possible to bookmark them within one’s preferred browser. But I wondered whether I could and should add links to them from within the Start menu instead — linking to Google Docs, for example, within the Office submenu. At any rate, within my present knowledge, it appeared that cloud tools offered great possibilities for expanding the scope of computing that this little old laptop could handle.
In some cases, I was sure that cloud computing would produce results at least as good as those produced by free or paid programs in Windows. It would take some time to learn which cloud solutions were acceptable for various purposes, but eventually that knowledge would arrive. Moreover, I was sure that, in other cases, free Linux programs would likewise match or exceed their Windows counterparts. The Linux Alternative Project (LAP) offered a list of major Windows programs, and indicated what their Linux counterparts would be.
At the same time, I was also pretty sure that, at least for my purposes, some Linux counterparts would not measure up. I had seen, for instance, that GIMP was indeed an alternative to Adobe Photoshop, as the LAP list said, but neither I nor most of the world seemed to think that it was a competitive alternative. There was a learning curve, and there were program limitations.
At some point, many Windows users were likely to wish for a way to run their favorite Windows programs on a Linux machine. Some would get by without that; others would return to Windows, if the alternative was to eschew the functionality to which they had become accustomed. There were basically two ways to try to help those people within a Linux computing environment. One was to offer them a virtual machine (VM) in which the entire Windows operating system could run, and then the desired Windows program could run in that VM. Unfortunately, VMs required much more horsepower than my little old laptop could provide. Besides, to the extent that a Windows VM required activation or other dependence on Microsoft, it would continue to impose a degree of unpredictability.
The alternative was to offer an emulation, compatibility, or virtualization aid that would permit the individual Windows program to run in Linux. Wine was the best-known tool for this purpose. As discussed in a prior post, there was a paid version, CrossOver, that would simplify the use of Wine, and there was a free Wine frontend, PlayOnLinux, which I had already installed on this little machine (see above). There might also be virtualization aids. For example, Cameyo, possibly the most popular virtualization tool, reported some success in its attempts to run packaged Windows programs in Linux via Wine.
When I began to look into these matters, I wondered if the Wine project was languishing. I noticed, in particular, that the PlayOnLinux main page offered links to a Wine Wiki that no longer existed, and also to an empty Wine page that supposedly offered “Hacking Tips.” The Wine History page did not appear to have been updated since 2008. But Wikipedia described Wine as being in “active” status, updated with its most recent stable release in February 2016. So maybe those weak or dead links were more a problem of failure to maintain the PlayOnLinux website.
It was not presently clear which, if any, of the established Windows programs would need to be run within Linux on this little old Dell laptop. To have an informed sense of that, I would need more time to transition into using Linux Mint on a daily basis, and the same would be true for the eventual user of this laptop. But I did want to get at least an introductory sense of how Wine worked. So I decided to try it with just one Windows program.
The program that I selected for this purpose was IrfanView. The steps I took to run IrfanView in Linux via Wine are written up in another post. I was ultimately successful — in the end, the Dell laptop did run IrfanView — but it took the better part of a day to investigate, test, and document the solution. To be sure, I was rusty in Linux, and needed to spend time writing down my steps. I would be more efficient in those regards, next time around. And now that I had recorded those steps, it would probably not take more than 10-15 minutes for me to do it again, if I had to install IrfanView in Linux on another machine.
The bad news was that most of those hours were devoted to searching for and reading material on the various approaches that others had used to run IrfanView. Unfortunately, what worked for one person did not necessarily work for another. With IrfanView, and presumably also with other Windows programs, the user might have to try multiple approaches before finding the solution. I was sure I would become more effective in my use of Wine, as I grew more acquainted with it. But I could not rule out the possibilities that, in some cases, I might still have to spend hours to get a single Windows program to run in Linux, or that some never would.
Then again, that was not necessarily a concern on this little laptop. As noted above, it was not going to be controlling any nuclear power plants. It needed to be able to do basic tasks, like word processing and web browsing. I had already seen that it could do those tasks. Since running a VM to handle other Windows programs was not an option on this limited hardware, I turned to the task of customizing the installation.
Making a Drive Image
Having invested this much time into this project, it seemed advisable to back up the system partitions. I planned to store the backup on a separate partition. So my first task was to finish the partitioning scheme that I had started when I installed Mint. Specifically, from the list of partitions shown above, I had not yet prepared the BACKROOM (i.e., storage) partition for service.
By this point, I did not remember whether GParted had already been included in Mint, or whether I had installed it. Either way, it was there in the Start menu, as Start > System > Partition Editor. GParted was certainly serviceable. It was not my favorite partitioner. I had downloaded ISOs of MiniTool Partition Wizard and PartedMagic, and could run those from a multiboot DVD or USB drive. But my browsing had not revealed a better partitioning tool that could run within Linux (i.e., without rebooting from DVD or USB), and that was all I needed now. So I proceeded to run GParted, and used it to format that remaining partition as ext4 and then, in a separate step, to label it as BACKROOM.
The next question was, what tool would I use to back up these Linux system partitions (i.e., / and /home) onto that BACKROOM partition? As described in another post, I experimented with Windows-based tools, and also with the Linux-oriented Clonezilla, before concluding that Redo Backup & Recovery seemed to be among the most user-friendly and effective solutions capable of working with Linux file systems. With Redo, I was able to make and restore a compact image at this point.
Changing the Screensaver
The default screensaver on this version of Linux Mint was godawful. It seemed to be designed as a sampler of extremely annoying cheap graphics, selected for their collective ability to present Mint in the worst possible light. I had coped with it thus far, but now it was desperately past time to fix it.
I mean, I knew we were not working with Microsoft’s budget, here, and that my tastes had probably been spoiled. I also knew I was critical; in fact, I did not run a screensaver at all on my Windows machine. No doubt others would be far more amenable to what was being offered. I approached the matter from the question of what a user like me might expect — not to find fault with the hard work that others had done, and that I was being given for free, but rather to identify where the hard work was not yet finished, for purposes of finding a screensaving solution that someone like me would find really engaging.
Taste aside, there was a practical reason for changing the screensaver settings at this point, rather than waiting until later, when I would be revising other aspects of the system’s appearance (below). I didn’t realize it at the time, but I was going to be reinstalling Xfce several times, and each time I would be able to use my screensaver adjustments to see whether my previous settings (specifically, my settings for the screensaver) had been preserved into the next installation. Operating systems do have to be reinstalled sometimes; I wanted to know whether reinstallation (below) would mean having to redo every little adjustment (to e.g., the screensaver).
The first thing was to figure out what program was running this screensaver. To do that, I went to Start > Settings > Screensaver > right-click > Add to Desktop, and then right-clicked on that desktop icon and chose Properties > Launcher tab. This showed me that the program running the screensaver was xscreensaver. Another way to learn that was to go to Start > Settings > Screensaver and look at the title: Screensaver Preferences (XScreenSaver 5.15, 25-Sep-2011).
The dialog at Start > Settings > Screensaver provided several options. One was to go to the Help tab > Documentation. This opened a webpage in the system’s default browser, which in this case turned out to be Opera, probably because that was the last web browser I had installed. That webpage led into the man (short for “manual”) pages for xscreensaver and also for the xscreensaver-demo program, which was what I was actually looking at: it was “the graphical user interface to xscreensaver.” There was also a link to xscreensaver FAQs.
One FAQ indicated that, the first time xscreensaver ran, it created a file called /home/m1210/.xscreensaver (where m1210 was the user name on this particular machine; the hidden .xscreensaver file would be visible via Ctrl-H in File Manager). When I opened that file, I saw that it contained a list of all the screensaver “demos” that xscreensaver had been running, along with any settings that I might have revised on any of those demos. (This would be an example of why I might be glad that my /home partition was separate from my root partition: having revised those settings once, I would not like to have to do so again, in the event of a reinstall.) As the FAQ said, there was a minus (-) at the left end of some lines that had already been disabled, in .xscreensaver, and I was free to minus out any others I didn’t want to see. Of course, I could also do that in the Display Modes window (Start > Settings > Screensaver > Display Modes): choose Mode > Random Screen Saver, and then uncheck the ones I didn’t want to see.
Other FAQs of interest indicated that, if the screensaver was running slowly, the solution might be to disable 3D demos; and if the screensaver was coming on while watching movies, it would be necessary to temporarily choose Disable Screensaver in Display Modes > Mode button (unless the movie player was mpv or mplayer). I did not explore the question of whether any of this could be fixed by going into Advanced tab > Display Power Management.
In Debian, at least, it looked like the basic set of demos included in xscreensaver could be enhanced with additional packages: xscreensaver-data, xscreensaver-gl and xscreensaver-gl-extra. A search for xscreensaver in Synaptic on this Dell computer indicated that those (and also xscreensaver-data-extra) were already installed. So it seemed I was working with the full available set of xscreensaver options.
What was irritating me about xscreensaver was that (a) I didn’t like some of the demos at all and (b) I didn’t like some of them because they were running at hyperspeed. I unchecked those that I still disliked after tinkering with their settings. I was hoping that the spacebar would check or uncheck the one I had currently selected, but no such luck. Left- and right-arrow keys didn’t do it either (though it seemed they should: I could use up and down arrows to navigate the list): instead, I had to use the mouse — but then the mouse was not able to end a preview. There appeared to be no way to hide, from the list, the ones I had deselected: the FAQs indicated that deleting them from .xscreensaver could screw things up.
I wound up with a pretty short list of demos that I thought might appeal to the person who was going to be using this computer: Bubble3D, Hilbert, Jigsaw, Moebius Gears, WhirlWindWarp, and GLText (using Advanced Settings with the phrase “Now I am getting somewhere …” with Best visual, rotating on three axes), with honorable mention to Fiberlamp, StarWars, and Noof. I initially liked Atlantis, but its rendition of marine creatures was distractingly crude. If it turned out that only one of that handful of finalists was really appreciated, that could be changed via Display Mode tab > Mode button > Only One Screen Saver.
Some of the others had potential, but there unfortunately seemed to be no way of slowing them down. In any case, there seemed to be an overabundance of demos featuring frequently unpleasant lines, wires, and geometries, as distinct from intriguing surfaces, objects, processes, and textures — not that this limited hardware, capable of running only limited software, would necessarily be able to handle the ideal.
The xscreensaver manual was not entirely clear on what other Display Mode tab options did. As far as I could tell, the screensaver demos would kick in after the number of minutes specified in the oddly named Blank After option; and if Random Screen Saver was the Mode selected, the program would switch to another of the checked demos after the number of minutes specified in the Cycle After option. If I wanted the screen to become locked after a certain number of minutes of user inactivity, requiring entry of a password, I would click Lock Screen After and would specify the number of minutes. As far as I could tell, all settings were effective immediately; there did not seem to be any Save button. (Later, I found a How-To Geek webpage discussing the settings available in xscreensaver on Ubuntu.)
Not that xscreensaver was the only game in town. If I hadn’t been worried about this old machine running hot and/or wearing out, I would have considered signing up for a distributed computing project like BOINC, because some of those came with appealing screensavers. There were other Linux screensavers as well, though again there was the question of whether this machine could handle them. A beautiful screensaver, stuttering for lack of processor power, was not the goal. A search led to indications that there might not be any other realistic alternatives.
The partitions and partition sizes shown above were not exactly the ones I actually created during original installation on this laptop. Originally, I decided on other sizes. Then, at this point in the setup process, I decided to change them to the list shown above.
This decision presented a potential problem. In Windows, the change would have been no big deal: as long as drive C was kept first in the list, a partitioning program would have been willing to insert new partitions and to make existing partitions as large or small as I liked, limited only by the size of the disk and the amount of material already in the partition. That is, I could not have shrunk a partition containing 10GB of material to a size smaller than 10GB, but otherwise the situation was wide open.
There were reportedly multiple (1 2 3) ways to resize partitions from the command line while Linux was running. But I agreed with those who preferred the safety and simplicity of a bootable GUI tool. I had several partitioning tools installed on my YUMI multiboot USB and my XBOOT multiboot DVD drives. Not all of those tools could work with Linux partition types. But Parted Magic (using GParted, which it called Partition Editor) and MiniTool Partition Wizard (among others) could.
The changes I needed to make were as follows: insert the desired 250MB /boot partition before the root partition; enlarge the root partition from its present 30GB to be 40GB; shrink the /home partition from about 90GB to 20GB; and divide the DATA partition to make room for the BACKROOM partition. Of course, I couldn’t rearrange and resize those partitions in precisely that order: I would have to create some unallocated space, and move it around, before I could create and enlarge any partitions. Unfortunately, Partition Wizard was not willing to shrink /home. I could open Partition Wizard’s Move/Resize dialog, but attempts to shrink the partition or enlarge its surrounding unallocated space were ignored. Fortunately, Parted Magic jumped right in and took care of it, though it did take a while. I rebooted the system and it still worked, and some of my previous tweaks (e.g., IrfanView, screensaver) appeared to be functioning as I had configured them, so that process seemed successful.
(Note regarding partition sizes: I had previously not paid much attention to the difference between megabytes (MB) and mebibytes (MiB), and their giga counterparts. I think things had been more consistent in the Windows world. But now I saw that creating a 250MiB partition in GParted was producing a 262MB partition in the Linux Mint File Manager. I wanted round numbers. GParted did not seem to offer the option of viewing partition sizes in MB. I was more familiar with MB; that’s what File Manager used; and that was therefore what I would be seeing more often. So I used an online calculator to figure out what to tell GParted, in order to come up with a 250MB /boot partition, and likewise for the others. Note also that, before I was done, I would be resizing partitions at least one more time, before finally settling upon the sizes stated in the Installing section, above.)
The next question was, how was I going to persuade my Linux installation to look to the new /boot partition for its bootup instructions? It already had a /boot folder in the root partition. Searches (1 2 3) did not provide insight. In File Manager, I verified that no magic had somehow installed bootlike files onto that new 250MB partition: it was empty, aside from a Lost+Found folder.
Another search led to a Linux Mint forum discussion where someone said the boot-repair program (see also the 64-bit boot-repair-disk live CD) had solved his/her similar problem. I tried running the 32-bit version from my YUMI drive. I clicked on its Advanced Options, took a brief look, and then ran its Recommended Repair. It indicated what it was doing. It seemed to be doing the things that had been checked in the Advanced Options. When it was done, it provided a text file indicating what it found and what it had done. I glanced through it. Some of it, I understood. I rebooted. As promised in its Advanced Options, Boot Repair had given me a ten-second bootup menu. It offered choices between my Linux installation (with or without Advanced Options) or Memtest86+. I was curious about the Advanced Options, so I chose that. This gave me a choice of booting my basic Linux installation, with or without Recovery Mode. I chose without. Back in my Mint installation, I used File Manager to look again at the 250MB /boot partition. Still no magic; still nothing there.
I decided that, at least for now, I didn’t like or need what Boot Repair had done to my system. I booted it again, but didn’t see an Undo option. This was not going to matter, ultimately, because of the decision I was about to make.
Discussions in Reddit and StackExchange seemed to provide instructions that I could have used to move my boot information from the /boot folder, in my root partition, over to the newly created separate /boot partition. But there were some things in those instructions that I did not understand or know how to do. In a Linux Mint forum, hal8000 said, “The easiest solution for a beginner is to back up your own data and reinstall.” This sounded suspiciously like the advice to go home, get back into bed, and try again tomorrow. But it did have the ring of truth.
Reinstalling turned out to be complicated. What happened, as I followed various advice, was not what was supposed to happen. It took several reinstallation attempts, with various mistakes on my part, to piece together a working solution. This section describes the steps I took.
One mistake was that I did not realize that the list of packages installed by Synaptic was not automatically saved in the /home folder. I didn’t want to manually reselect all of the packages that I wanted Synaptic to install. In this particular setup, that might not be a big deal. But in a fully developed system, that could involve hundreds of selections. I wanted to learn how to do it right. And to do that, I had to run Synaptic and use it to generate the list of installed packages.
Since the system was not working correctly, I would have to reinstall it in order to run Synaptic. But a new installation would not capture the list of packages I had already installed. To capture that list, I would have to restore my previous drive image using Redo Backup & Recovery. This entailed some unpleasant discoveries about Redo as an image restore tool. Specifically, using Redo to restore from one partition to another on the same drive could result in trashing most if not all partitions on that drive. Fortunately, I had another backup, and now that the disk was trashed, I was able to give Redo room to roam. It restored successfully — but then I did have to use Boot Repair Disk (above) to make the restored system boot.
Once I had the system restored, I was able to go into Start > System > Package Manager. That opened Synaptic. Its File menu pick offered three choices that I thought might be of interest: Save Markings; Save Markings As; and Generate package download script. To learn how to use these, I ran a search and looked at Gary Richmond’s advice: use Save Markings > check the box at the bottom (“Save full state, not only changes”) > save to a USB or other external drive. (Suggested filename: something like 2016-04-23_Synaptic_Packages.)
Another mistake was to use the administrator account to copy the various files that I wanted to store on my /home partition. Those files are detailed in a separate post. I used the administrator account by typing “sudo thunar” in Terminal. (Thunar was the name of the File Manager in Linux Mint Xfce. According to a Linux Mint forum, other versions of Mint had other file managers instead of thunar. In Mate, it was caja; in Cinnamon, it was nemo; in KDE, it was dolphin.) That opened a session of File Manager that I could use to copy and paste files wherever I wanted. The drawback was that this could make the administrator the owner of the files that had been moved. This would cause problems for the user, such as the user known as m1210 that I had created on this Dell laptop, because the user would then not have access to necessary files. An experienced Linux user could probably have found a way around this mistake, but for me it was the cause of yet another reinstallation.
Now that I had the Synaptic list backed up on external drives, along with the /home folder contents and other materials, it was time to reinstall from scratch. I booted the Universal USB Installer, as above; I gave it the desired details on the revised list of partitions, indicated above; and we commenced the installation process. Unfortunately, I got an error message stating that the installer had crashed. And now the installer would not even fully reload: it died with an error message,
MDM could not write a new authorization entry to disk. Possibly out of diskspace. Error: No space left on device.
Retries resulted in the same error. A search suggested that this was a rare problem. One discussion advised running Boot Repair. As an alternative, I was able to put the Linux Mint installer onto the YUMI drive and boot with that. But now I was getting some new messages. First, the installer wanted to know if I wanted to unmount the YUMI USB drive that I was booting from. It hadn’t asked me that on previous installation attempts. I said yes. That was a mistake. After I told it how to divide the disk, it said this:
Do you want to return to the partitioner?
Some of the partitions you created are too small. Please make the following partitions at least this large:
If you do not go back to the partitioner and increase the size of these partitions, the installation may fail.
Not that that made any sense. I clicked Go Back, but could not see what I might be doing wrong, so I clicked Continue. That left me for a while with the little spinning wheel, the Mint counterpart of the Windows hourglass. Five minutes later, no change. I guessed that the problem was that I should not have agreed to let the installer mount the YUMI drive. I cold booted the machine and started over. This time, I said no when it asked if I wanted to do that. I got no weird messages. The installer ran, finished, and prompted me to restart. The machine booted successfully.
At last, I could move the /home folder to the newly created /home partition, and put my previous /home materials onto it. The other post details those steps. That seemed to conclude the reinstallation process. I could resume the original project of configuring my Linux Mint Xfce installation. Having achieved that — and having learned something about the shortcomings of Redo Backup & Recovery — I could start by making another image backup, this time using Clonezilla.
Aside from setting up a swap partition (above), there were at least two other swap-related adjustments that could improve performance on a Linux machine. According to an Ubuntu community document, one had to do with swappiness: that is, how eagerly the system would move processes out of RAM and store them in virtual memory (i.e., in swap space on a drive), which was larger but very much slower than RAM. HowToForge pointed out that swappiness would be less important on machines with large amounts of RAM, where swap space would rarely if ever be used.
The question was, what swappiness value would be optimal? Various sources indicated that the default value in Ubuntu and Red Hat was 60, that this was considered optimal for a typical server, but that a lower value might be better for a desktop. For a PC, the Ubuntu community document and other sources proposed an optimal value of 10. But an AskUbuntu discussion pointed out that the matter was not simple, that reduction to swappiness = 10 could be counterproductive, and that the default setting of 60 could be ideal.
TipsOnUbuntu and UbuntuGuide said that the current swappiness value was visible via this command: “cat /proc/sys/vm/swappiness”; that it was possible to change the value temporarily (i.e., until the next restart) via “sudo sysctl vm.swappiness=10”; and that the default value could be changed by adding a line, “vm.swappiness=10” (or whatever value was desired, assuming there was not already some such line in place) in the file opened by this command: “sudo gedit /etc/sysctl.conf.”
Consistent with some of the comments I read, it seemed that, on this little old computer with just 1GB of RAM, virtual memory (i.e., swap space) would be used frequently. So it did not seem prudent to set a low value for swappiness. A low value would resist swapping, when (in this case) swapping seemed unavoidable — when I would probably want the computer to be moving processes out of RAM to make room for the current task. It seemed I should probably leave swappiness at its default.
What might be more helpful, I thought, would be to use a swap file — as a supplement to, not a replacement for, the swap partition I already had. This turned out to be advisable, though, only if the swap file was located on something other than the HDD where the swap partition was located, because a swap partition was reportedly much faster than a swap file, all other things being equal. There was the possibility of putting a swap file on a USB or SDHC drive. But there were concerns that swap on a flash drive would quickly wear out that drive, and also that memory failure and data loss might not be noticeable for some time before the flash drive failed completely. Contrary to some suggestions, JPvRiel found that even USB 2.0 flash was faster than an HDD.
It seemed that a better alternative (if this old machine were worth the investment) would be to replace the internal HDD with a new or perhaps used SSD, or possibly even a USB 3.0 external SSD. But better still would be to start by increasing or replacing RAM, because JPvRiel found that even SSDs mounted in internal RAID0 had only 10% the speed of RAM. There were (1 2 3) indications that this machine’s motherboard would recognize 4GB. Actually using the full 4GB, on a 32-bit machine, would presumably require a PAE-enabled operating system.
When I reached this point in the Xfce installation project, I paused to focus on a related task. Along with this little old 32-bit Dell machine, I also wanted to install Mint on a newer 64-bit ThinkPad. But on that machine, I wanted to install the Cinnamon desktop environment, not Xfce. As described in another post, I installed Cinnamon in a dual-boot arrangement with Windows 7 on that machine. Then I attempted to copy over the user configuration from this Xfce machine to that Cinnamon machine. At the end of that effort, as detailed in a different post, I decided to start over with Cinnamon rather than Xfce on this old Dell, and I also planned to reverse the copying direction, from the 64-bit machine to the 32-bit machine. I expected that a subsequent post would carry the account of those next steps in the development of this old Dell.