Pre-Installation

The first step in creating Slackermedia is to install Slackware and configure it for your machine. It is strongly advised that a user be familiar with GNU, Linux, BSD, or UNIX before attempting to build a Slackermedia system. However, it is hardly unheard of (and in fact, arguably best) for someone to start their Linux journey with Slackware. This chapter will guide you through the install process and it will attempt to flag potential points of confusion.

There is no way for this book to anticipate every problem possible, but there are many resources online to help a new Linux or new Slackware user through the installation process, not the least of which is the official Slackware documentation at docs.slackware.com. Some support for installation is available via http://linuxquestions.org, which is a forum run by volunteers, so be patient, friendly, and do as much research as possible before asking questions so that the answers that you do get are not redundant to your efforts.

If you are looking into using Slackermedia for a large user base and you require paid support, contact the author to discuss options.

Off-the-Shelf Linux Systems

Computers are mostly sold with an operating system already installed and configured by the OEM vendor. If that is the experience that you seek, then you should purchase computers from http://zareason.com or http://system76.com, or any vendor offering any kind of pre-installed Linux. With Zareason, you can even request a Slackware install, but even if the vendor will not pre-install Slackware, at least when you purchase from a Linux-oriented vendor, you know that the hardware is tested for compatibility, which makes the install process nearly trivial.

Hardware Selection

If you do not have the money or inclination to purchase a pre-approved Linux computer, you can install Slackware yourself. You can even build your own workstation from parts, if you are looking for higher-than-usual performance, or you just happen to enjoy building your own PC.

If you are a starving artist with strong technical tendencies, then you can even rescue a computer from a dumpster (either figuratively or literally), fix it up as needed, and then install Linux.

If you have never installed an operating system, you will probably find it far easier than you might imagine, as long as you choose the right hardware. Most problems in a Linux install occur due to closed source drivers, so choosing hardware that is designed to make a user's life easy will save you time and effort.

The Linux kernel has become famous for its hardware support, but it never hurts to research what you are about to purchase with real-world case-studies. There are a handful of sites on the internet dedicated to analyzing how different hardware works with Linux, which works best as a boolean determination of compatibility; it can accurately be measured whether something does or does not work with Linux. Degrees, however, are harder to ascertain, since one person's requirements for performance might be drastically different than another person's.

The best way to make sure hardware works to the degree needed from a multimedia artist is to test the hardware. Burning a liveCD of a multimedia distribution and taking that disc to a computer store and rebooting the target machine into Linux is a very good way to judge hardware Linux compatibility and performance.

While liveCDs will run slower than running an OS from the harddrive, it should still give the user a good idea of severe problems, and the user should make some allowances for the fact that the test is being performed on a liveCD.

If specific multimedia peripherals are required to work as well, they can be judged separate from the workstation itself. Regardless of what computer is purchased, the Linux kernel either does or does not have support for a peripheral. An online search or tests at home on any computer available should reveal whether or not an interface or peripheral is recognized and usable on Linux.

The computer market can be confusing and it is often difficult to know what actually has a pragmatic significance in multimedia. In other words, all things being equal, where in a computer system should a buyer spend money? Some general things to keep in mind:

CPU

There was a time when every last megahertz really did matter to the end user, but lately most CPUs have reached a mostly-equal plateau in speed. Brands and model names will advertise different features but generally speaking any general-purpose computer AMD or Intel 64-bit CPU will do as well with multimedia as another. “General purpose” excludes chips designed specifically for netbooks and other ultra-portable or low-power devices.

CPUs process data, so the jobs that benefit most from multiple CPUs or very fast CPUs are processing-heavy activities such as video compression, non-realtime special effect rendering, realtime audio effect generation, audio effect rendering (sometimes called “freezing” in a DAW), large image conversion, audio file conversion or compression, and so on. Very broadly speaking, it could be said that the CPU matters most on jobs that involve pressing a button and then getting up and going for a cup of coffee in anticipation of having to wait for the job to be complete. Some of these jobs will literally last for days, others may only be a few seconds past the point at which a typical user becomes bored with waiting.

If you are going to do to do graphically-intensive work such as 3d modeling, digital painting, or video editing, then go with a mid-range CPU and spend more money on a good graphics processor.

If you are going to do audio work, put your money into CPU and RAM, and spend less on the graphics card.

Finally, do not be confused by branding. Intel and AMD are basically the same in function and performance from a practical standpoint. The brand should never be a deciding factor.

RAM

How much RAM you have dictates, largely, what size projects your system can comfortably handle. Audacity. for instance, will be responsive with a 30-second spot but will feel sluggish with longer projects, or projects with a great many tracks. GIMP will do well on web graphics but struggle with for-print graphics. This is simply because information is moving in and out of RAM; upgrade the amount of RAM, and the applications will function more consistently.

The speed of RAM is less talked about in consumer electronics, but the overall responsiveness of the system is greatly dependent upon it. The faster the RAM, the faster the information can be moved from RAM to CPU for processing, so given the choice, purchase the faster RAM. On the other hand, if money is an issue, try to find a happy medium between storage space and speed.

The old adage that “you can never have too much RAM” has not held up all that well with time, at least not on a normal desktop or laptop (render farms and RAM disks are notable exceptions). Realistically, you can only be doing so many things at once, so unless you just open up every large project simply to spite your computer, some RAM will end up net being used. So get a lot of RAM, but if price is an issue, only get a little more than you anticipate needing. If you have money to spend, get some extra RAM for comfort, but don't go overboard unless you are actively building a render farm.

Hard drive

Hard drives are quite reasonably priced, so more is probably better, and financially possible for all but the most severest of budgets. Less affordable are Solid State Drives (SSD), but the performance increase is so remarkable that it is strongly suggested that you purchase an SSD drive for at least part of your system; since it only needs to house the applications, it can be a small drive (16gb or 32gb will do, considering that the entire Slackware distribution, uncompressed, is only about 10gb).

An ideal, but still affordable, setup would be one SSD drive to hold the binary, executable applications that run your computer (and the multimedia applications which you will run on a daily basis), one standard hard drive to house all of your data as well as the system data, and a third standard hard drive to perform constant backups.

Graphics Card

A powerful graphics card is quite important if you will be doing video and graphics work. For serious visual multimedia, it is very likely that you will need to install a proprietary graphics card driver since the companies do not release their driver code as free software. This is unfortunate and taints an otherwise open source system, but the performance increase can be measured in orders of magnitude.

If you are not doing intensive video or graphics work, then probably your only concern with a graphics card is whether it will work and handle the basic visual needs of your system. For these low-end to mid-range cards, the drivers can come from Nvidia, ATI, or Intel, or from the Linux (actually Xorg) developers. Performance can usually be gauged in tests at any computer store.

Whether you're looking for a high-performance card or a mid-range card, you can always determine the official support by going to the chipset manufacturer's website and finding a download (or lack thereof) for the card. If the download is there, you are at least guaranteed performance for that chipset, on the kernel or kernels for which the code was released.

Otherwise, look on the X.org website to see if they have a driver for the card you are looking to buy (or buy along with a laptop or pre-built system), and take note of what kind of performance results are being seen with those drivers on that card.

Not out of allegiance for a particular brand, the best bet for graphics are pragmatically Intel for light graphic work (photos, still image compositing, some 3d titling, light video editing) and Nvidia for moderate-to-high graphic work (serious 3d modeling, complex video editing, animation, video compositing, large-format photo work). Nvidia is infamously proprietary and secretive, but they do actively maintain their code, and it performs well. Developers hate them, but in terms of results, they are the high-end graphics to use.

Currently, it is recommended that you avoid AMD (formerly ATI) graphic cards.

GPU Tests

Buying a GPU is nearly as complicated as buying a computer. GPU cards have processor clock speeds, RAM, RAM speed, bus speed, fans, a variety of possible monitor outputs, and may even require additional power to run.

Actually using a GPU notwithstanding, the best way to get a feel for GPU performance is to keep a finger on the pulse of the GPU market, especially within either the visual effects or the gamer community. The VFX community would presumably be the most apropos group to follow, but they tend to be less verbose about the gear they use than the gamer community. Since so much of gaming depends on realtime GPU performance, and gamers are some of the most demanding computer geeks alive, and they tend to take pride in their computer builds. Consequently, when gamers rave about a GPU, you know that the GPU is worth the money.

The general-purpose multimedia community is usually less reliable, since so many of the users in that space don't actually know what a GPU or a CPU does. They generally know a lot about video editing or 3d modeling, but not much about the technical side of what makes it all happen.

A GPU's performance is defined primarily by how much video memory it has, and how fast its processor is. Look at a card's specs, and find out the clock speed and the amount of memory, and use these numbers to determine what to expect from the card.

A few unscientific tests to determine the real-world performance of a graphics card, should you have the opportunity to test it in a computer store before buying, is to go burn an image of Slax, a portable live Linux distribution based on Slackware. Take the CD (or USB drive, if you're savvy) to a computer store and put it into any display computer and reboot.

For a full explanation of how to use Slax, see the website http://straightedgelinux.com/slax.

  1. Launch KDE's System Settings and turn on Desktop Effects in the Desktop pane.
  2. Navigate to the All Effects tab and turn them all on.
  3. Close System Settings (saving your changes). If any of the effects are not able to be activated, then that GPU is obviously limited (or its driver is).
  4. Assuming all the effects can be enabled, open a few windows (Dolphin, Konsole, konqueror, and so on) and play a video in Dragon; while the video is playing, use alt-tab to switch between the windows.
  5. If the video and its reflection continues to play smoothly through the animated switching, the card will more than likely be a suitable card for at least moderate to heavy video work and other multimedia creation.
  6. Continue to add more videos, and continue to alt-tab to test the limits of the card. Take note of flickering, stuttering, and other distortion.


If you have time and the skill for Blender, test it out on the computer. If Blender performs well, then the card is probably well-suited for any other visual work you have in mind for it.

Sound card

Play sound to ensure that the speakers are being recognized and are supported by the Linux kernel. Assuming that the computer does provide sound, try playing multiple sources of sound and test how the audio card handles multiple tasks. Obviously, the more robust the card, the better, but in most computers the real test is simply whether or not the sound card is recognized. For multiple inputs and outputs, an additional, more professional sound card or interface will need to be added.

Audio difficulties usually arise from either HDMI (the computer might see HDMI as the primary output, but most speakers plug into the 3.5mm jack), or from dual-purpose audio jacks (a horrendous invention that combines the output for headphones with the input for a microphone, meaning that you can never have both plugged into your computer at once).

If audio does not appear to work during your tests, chances are that it will either never work, or it will work only after much re-configuration. Consider that before you purchase.

If you are having problems in your sound tests, find out the specs of the audio card with the command aplay -l and then research the model online.

Wireless card

Although this is less of a problem now than it has been historically, there are wireless network cards that simply do not have Linux drivers. Recently more drivers have been developed and hacks around the lack of drivers have been implemented, but a cursory test of the wireless card is worth while. If it is not recognized, issue the command lspci on the command line and look through the listing to find the card's chipset. Perform an online search to find out how well supported the chipset is and review the necessary steps that will need to be taken for the card to function.

The go-to site for wireless information on Linux is https://wireless.wiki.kernel.org.

Webcam

Webcams are generally well-supported in Linux, even if they are not recognized out of the box. If the webcam is vital, launch vlc to test whether the webcam is recognized.

  1. Launch vlc; install if it is not already on the liveCD
  2. Navigate to the File menu and choose Open Capture Device
  3. How the webcam will be seen is difficult to predict; it might be listed as /dev/video0 or it may be some other name, and it may use the video4linux (v4l2) driver or the UVC driver.
  4. Play around with the settings, look at the /dev listing in a terminal as needed, and see if you can get an image from the webcam when you press the Play button in the capture device window.

Miscellaneous Considerations

Anticipate what might be required of the multimedia system and take this into consideration whilst considering the purchase. The outward appearance of a computer matters not at all compared to its capabilities. Proprietary connection types and a lack of common features like an optical drive or SD card reader will only complicate the always complex task of importing media.

If it is not a new computer being purchased, but a used computer, the same tests should be performed, in addition to common physical tests, such as ensuring all of the ports are functioning, the optical drive functions as expected, the harddrive is healthy, and so on.

In all cases, the commands

lspci >> lspci_computerModel.txt

and

aplay -l >> aplay_computerModel.txt

should be performed, and the resulting files (lspcicomputerModel.txt and aplaycomputerModel.txt) should be saved to a thumbdrive for later review. The lspci command lists all internal components such as the graphics card, amount of RAM, wireless card, and so on. Some commands to bear in mind in general:

  • lspci lists all major internal components including revision numbers and much more
  • cat /proc/cpuinfo lists all details on the CPU(s)
  • free -g reveals how much RAM is in the system in gigabytes, and free -m reveals the RAM in megabytes
  • df -h reveals free disk space in human readable format; useful for checking the size of the harddrive

Desktop or Laptop?

It's financially advantageous for computer manufacturers to claim that their laptops are as powerful as traditional desktop computers; it encourages people to buy laptops, which feature lower-specs for higher prices. These claims seem true at first glance. After all, if someone is editing a video clip on a laptop then the marketing must have been right.

The truth, of course, is that laptops have lower-specs than a desktop that is even a fraction of its price, so for the same amount of money as one might spend on a good laptop, a downright amazing desktop could be purchased. And for every professional artist you see working on their masterpiece on a laptop in either a glossy magazine ad or in a trendy cafe, there are ten real artists working on actual productions at their desktops.

If it is horsepower you seek, then you should invest in a desktop machine. If you are more flexible with how much raw power you have at your immediate disposal and value mobility, then obviously a laptop is probably a better choice.

Building Your Own System

Building your own system from parts is the best possible option you have in terms of finances and control. Useless parts are not forced upon you, you can achieve a perfect balance of all the different features and capabilities you need, and there always room for expansion.

A computer consists of a few main parts that can be bought individually from any good computer store. You must ensure that all of the parts fit together properly, which can be tricky for beginners, but if you read the descriptions of the items carefully and match all of the part numbers and types together, then you will be able to assemble it with success.

If you are unsure about what you've chosen, find an IRC server where you can chat with Linux geeks, and ask them about the parts you've chosen. Slackermedia itself maintains an open IRC channel on the http://irc.freenode.net network.

Balancing cost with performance is obviously an eternal struggle. Keep in mind what you really want from your computer, and spend your money accordingly. For graphics and video, concentrate on the graphics card; for audio, lean toward the CPU and RAM, and possibly an extra audio card or interface, and for writing, well, buy a second-hand netbook and save your money for coffee.

In any case, consider purchasing an SSD drive (solid state harddrive) for your system. The performance increase is mind-boggling and a small 16gb or 32gb SSD drive can easily hold the system partitions for Slackware (that sounds small, but consider that Slackware itself is distributed on a 4.7 disc).

In every case, try to re-use parts from other computers; if you can recycle an optical drive, save yourself the expense. Find an old keyboard you can use, pull a network card from a neighbour's discarded computer. Offer to rescue a helpless Windows user's data in exchange for the parts of their dead computer. Building your own box makes re-directing cashflow quite easy.

Slackware's installation is menu-based and provides all the information needed to understand the process. This is not necessarily true with all operating system installers, or even with all Linux installers, but with Slackware, reading the screen makes the installation fairly self-explanatory.

The following walk-through will explain how to do a normal, general-purpose Slackware install. If you require something more complex (hint: you probably don't), then refer to http://docs.slackware.com.

Installation of Slackware begins with obtaining a Slackware installation disc. Since an installation disc is a handy thing to have around, and since you'll likely find Slackware a priceless addition to your studio, purchase a disc from the Slackware Store. If you cannot afford an install disc, it is also available for free from http://slackware.com or via bit torrent.

Slackermedia officially advises against “dual booting”, a somewhat popular method of having more than one operating system or versions of operating systems on a single computer. Dual booting is fine for bug testing or trying out various versions of Linux, or for enabling a user to have both a proprietary OS needed for work and one free OS for real life, but it tends to add confusion to the installation process as well as to the stability of the system since one OS may attempt to change the master boot record unexpectedly, or a user of the other OS may accidentally erase or corrupt another partition, and so on.

Slackware works best when you simply have faith in it. Dual-booting provides a false sense of unnecessary security, and helps subconciously reinforce the idea that Slackware is too complex or too independent or not popular enough, or whatever subconscious fear you happen to have about it.

Install Slackware and use it. Or don't. But don't hedge your bets and dilute your commitment.

At $50, a complete operating system and a complete set of applications is not a bad price, and all the money goes to Slackware, so do consider paying if you can.

After the Slackware install disc has been obtained, begin installation as with any other OS or distribution: place the disc into your optical drive, and reboot the computer with BIOS or EFI settings such that the optical drive precedes the harddrive in boot order.

Motherboard Settings

There are dozens of motherboards on the market, and there is no way to cover them all, but there are some general things to know about motherboard settings. First of all, the settings of a motherboard can be modified by an embedded firmware interface. By modifying the motherboard settings, you can activate or deactivate features that will help your install go much smoother, and possibly enable your computer to have better performance.

Apple hardware locks down the motherboard firmware interface, making it inaccessible to the user. They have some snag keys that perform basic actions (such as activating a verbose boot, or selecting a boot device) but mostly the user is locked out.

To enter the firmware interface of a motherboard, there is a “snag key” that you must press just after powering up the computer. The snag key will probably be different depending on what motherboard your computer uses, but it's usually Del or F2 or Esc. Refer to onscreen instructions if there are any, or to the motherboard's documentation, if you are not sure.

Available options vary from motherboard to motherboard, but these are important ones to look for:

  • Motherboard Settings
    • Secure Boot: motherboards made around the time of Windows 8 may have the option of using “Secure Boot” (on some boards, the option is rather to not use “Secure Boot”). “Secure Boot” should be deactivated, as it will treat any non-Microsoft OS as, more or less, a virus.
    • Boot Order: this controls which drive gets priority when the computer gets powered on. Set it to look to the optical media first, then whatever drive you will be installing Linux to.

      You can usually override this setting manually, as well, with some other snag key at boot time (F8 or F9 seem to be popular choices).
    • Partition support: every motherboard seems to label this differently, so look for CSM Mode, IDE Mode, BIOS Legacy, or anything with options differentiating BIOS and UEFI.

      There are, basically, two types of motherboards: those that use BIOS and those that use UEFI.

      If your motherboard uses BIOS, then you will use MBR partition headers, and will not be able to use any single drive that is larger than 2TB in size (you can RAID several drives together into an array greater than 2TB, but no single drive can be over 2TB due to limitations of MBR) UEFI motherboards can use the GPT (GUID) partition type, free of any pragmatic limit on drive size.

      UEFI motherboards usually have the option to also support MBR partitions (usually labelled “legacy mode”).

      If you do not have a drive that is greater than 2TB, then you can use this mode. If you have a drive greater than 2TB then you must use the GPT partition type.
    • Date and Time: take note of the date and time settings on your motherboard. If they are incorrect, set them to either local time or to GMT (also called UTC).

R S Q