Comp 3000 ArtistX Report

From Soma-notes
Jump to navigation Jump to search

Part I

Background

     ArtistX is a free Linux distribution whose aim is to "turn a common computer into a full multimedia production studio"<ref name="axhome" >ArtistX homepage</ref>. The current version (at the time of writing) is based on the Ubuntu release 'Natty 11.04'. With multimedia developers in mind, its distinguishing feature is that it "includes almost all of the free multimedia software available for the GNU/Linux platform" so that someone who regularly uses graphics or audio development tools is ready to start right out of the box<ref name="axhome" >ArtistX homepage</ref>. The easiest way to download it is to go to the Download section of their website but be prepared to receive a big file; the .iso file is 3.6GB. If the size deters you at all keep in mind that there are (according to their site) over 2500 packages of free multimedia software that have to be able to run on a live DVD.

     ArtistX seems to have undergone a couple of name changes since its inception by the Opensourcelab team from the Open Source Laboratory of Virtual Reality and Multi Media Park as we see from the earliest news releases on distrowatch<ref name=dwatch >ArtistX distrowatch news releases</ref>. Developed in Turin, Italy, Medialinux (which then became Mediainlinux) was based on Knoppix (with a couple of releases being based on Debian instead). The last release to use the name Mediainlinux was released in 2005 (this release was also the last to be based on Knoppix). It wasn't until 2007 that another release appeared, this time sporting the current name of ArtistX. The first few releases were based on Debian but since 2009 every release has been based on Ubuntu.

     Considering the type of company who originally developed this distribution it's easy to speculate why they decided to make it. If you were the head of a multimedia company, wouldn't you want to have your developers working with high quality software? Wouldn't it be great if that software was free and readily available?

  Currently it is unclear what company develops this distribution due to the following:

  • the website has no 'about' section;
  • there are no links to companies found on the website;
  • the 'Copyleft' at the bottom of the ArtistX page reads "Copyleft © 2011. ArtistX - Audio Graphic Video Multimedia Linux" which, along with the 'Donation' button on the page, may indicate it having branched off into an independent company now;
  • the person associated with the company through the distrowatch news releases<ref name=dwatch >ArtistX distrowatch news releases</ref> is a man named Marco Ghirlanda, who lists Project Manager and Team Leader at ArtistX as his current profession on his LinkedIn profile which also hints at an independent company now;
  • looking at Mr. Ghirlanda's work history we see that he worked at Virtual Reality and Multi Media Park until February 2006 which is about the time when he started his job at ArtistX (January 2006) which seems to indicate that ArtistX branched off into a child company;
  • further evidence that development of this product branched into its own company is that its predecessor in the distrowatch news release is Mediainlinux<ref name=dwatch >ArtistX distrowatch news releases</ref>;
  • branching off would explain the lapse between the last Mediainlinux release and the first ArtistX release.

Faced with this information one would tend to speculate that ArtistX is its own company that develops itself and is probably a child company of Virtual Reality and Multi Media Park. There is a small piece of evidence against this conclusion however and that is the lack of any link to each other or mention of each other on their webpages.

Installation/Startup

     For reasons of convenience I decided to install and test this operating system (OS) in a virtual machine (VM). Specifically, the setup was run from Oracle's VirtualBox version 4.1.2 from one of the computers in one of Carleton University 's many labs. The machine ran Windows 7 Enterprise with about 4 GB of RAM (although the VM only got 1419 MB) and an external drive from which to allocate the 20 GB disk size I gave the VM. If you're wondering why I would give this VM 20 GB it's because the ArtistX website documentation recommends 512 MB RAM and 20 GB disk space for installation. As for the number of processors, I left it at the default of 1. Hardware virtualization was enabled, specifically "Enable VT-x/AMD-V" and "Enable Nested Paging".

     The installation process went fairly smooth with few hiccups. Once the VM was setup and the iso was loaded it presented a few options to select from. One small annoyance was that although I selected the 'install' option it seems to have ignored it and run from the live DVD anyway. It took about two to three minutes to boot up after which I ran the install executable on the desktop. The installation was straightforward and didn't require much user interaction, probably the same amount as Ubuntu requires; it asks for your language, asks you whether it should use the whole hard drive or partition it, asks you which drive to use, asks you where you are and finally asks you to create a user account. From there it does all of the work.

     For me this whole process took just shy of an hour. I can only guess why it took so long but I'm sure the following affected it negatively: I enabled the boxes that asked if it should download updates from the web as it goes and then install some third party software; I was running other applications in Windows (namely a few instances of paint, Firefox and Microsoft Office Word); the VM had only one processor to work with; the amount of RAM wasn't very high; the university's internet probably wasn't very fast, as is often the case; the OS was being installed on an external hard drive attached via universal serial bus (USB).

     After installation succeeded it asked me to restart the machine, so I did. I found it odd that when it starts back up it asks to choose between the Ubuntu OS, Ubuntu in recovery mode, two memory tests and sometimes another option of 'Previous Linuxes'. I told it to boot the regular Ubuntu. It seems to have been the right choice since ArtistX loaded normally after that. Another oddity though is that after I logged in as the user for the first time it gave me an warning message saying the hardware couldn't run a program (Unity) and told me to choose 'Ubuntu classic' at the login screen. I closed the message box and it continued fine to the desktop. Unfortunately the initial installation didn't install all of the updates. I was then presented with the option to update Ubuntu (which I declined) and to update, install and remove a bunch of random packages (although it told me it couldn't install all of them due to some error or other so it would do a partial install). This round of updates took a little more than an hour and another restart to complete and left my machine looking more like Ubuntu than it had initially. Finally, I installed the guest additions which thankfully took only a couple of minutes to install.

Basic Operation

     A typical use case for someone who installed this distribution would likely be some kind of multimedia development. This distribution is good for that in that the tools are readily available and easily accessible. In the bottom left corner there is a button that resembles the Windows 'Start' button. Opening this 'Start menu' we are presented with a list of topics (e.g. 'emulators', 'video', 'music', 'graphics') that expand when highlighted to further menus. For example the 'graphics' menu presents another menu with '2d', '3d' and 'view' options, each of which would then expand into lists of programs relevant to '2d' or '3d' graphics development or programs to view photos.

     Not being experienced in multimedia development, I found it hard to evaluate the choice of included programs. They're probably the best free software available but whether or not someone could use it for their job I couldn't really say. That being said it looks like they covered all of their bases (i.e. graphics and video creating/editing) and offered a few choices to do the major things like editing.

     Being in the school's computer lab my computer didn't have speakers so I wasn't about to try any programs dealing with audio. Also, dealing with a fresh install I didn't have any files readily available for manipulation so really audio, video and image editing were out of the question. I figured the best type of program to test in my situation was a 3d modeling program. My biggest challenge though was that I've never done that before so I had a learning curve to overcome.

Me playing around with the 3d modelling program 'Bender'

     However it's not the modelling program I'm reviewing, it's how easy and comfortable it was to use. Although I didn't end up with any useful model due no doubt to my lack of experience, it was a relatively positive experience. The system in general didn't always respond to my input but it did a pretty good job although the graphics would lag a little every now and then. One program in particular couldn't run because it didn't have enough RAM. I'm not sure if that's indicative of the system generally requiring more RAM than I gave it but it seemed to do a pretty good job with what it had.

Usage Evaluation

     Although I can't speak for multimedia developers I think this distribution met its design goal of "turning a normal computer into a multimedia production studio"<ref name="axhome" >ArtistX homepage</ref>. It is easy to use and easy to navigate to the programs you would need. It offers a plethora of programs that seem to cover the necessary topics but I can't vouch for how useful any of the programs would be to a real multimedia developer. I can't vouch for performance either due to not having really stressed the OS in terms of device I/O which is just as big of a concern as having the right tools. After all, there's no point in having the right tools if you can't use them. I don't know the internals of the system but I'm thinking they've optimized for device I/O. Going back to performance, I have mentioned that I experienced lag and occasionally user input was ignored. It was fast but it could be better. It's possible that these issues are a result of running in a VM with about a quarter of the RAM used by a modern, non-virtualized machine.

     One thing in particular that I liked, stood out and is different from other Linux distributions I've seen is that the look and feel (especially on the desktop) resembles Windows. I think this was done to ease the switch to this Linux development environment from a Windows development environment which is important because that's probably what their target consumer is going to be doing.

     To summarize, although I'm not experienced in the target field, I think that this distribution met its goals and that it's definitely worth looking into if you're a multimedia developer. After investing a few hours you may make a decision that will save you quite a bit of money. I think the biggest thing to look at is whether or not the given tools will be sufficient for your needs. I don't think a serious developer is going to be working inside a VM so the VM performance hit probably won't matter, but even if the issues were not due to the VM and the limited available RAM, they didn't seem bad enough in my limited interaction to be a deterrent.

Summary

     Worth looking into if you're a multimedia developer despite the iso size and consequently the potentially long download time and despite the long installation time.

Part II

Software Packaging

     As mentioned, this distribution is based off of Ubuntu which is itself based off of Debian so it would be no surprise to find that the software packaging is done in the same manner. I cannot say for sure, but from what I can gather it seems that this is the case. It seems that there are three utilities to manage packages with a Graphical User Interface (GUI): the 'Update Manager', which seems to deal only with updating packages, the 'Synaptic Package Manager', which deals with installing, updating and removing packages, and 'Aptitude' which does the same thing (I threw Aptitude in as a GUI because although it is accessed from the terminal, once started you can navigate the program with the mouse). As for a command-line utility this distribution comes with, as is implied by the presence of Synaptic and Aptitude, the Advanced Packaging Tool (APT) and therefore also the dpkg tool. Although Synaptic and Aptitude can be used with RPM packages, all evidence, especially ArtistX's lineage, leads me to conclude that this distribution uses the Debian package management system based on the 'deb' package format, which seems to be a binary package format opposed to a source package format<ref name="WikipediaSynaptic" >Wikipedia Synaptic description</ref><ref name="WikipediaAptitude" >Wikipedia Aptitude description</ref>.

     Using the GUI utilities makes it incredibly easy to see what packages are installed (except using the Update Manager which just tells you what can be updated). In Synaptic, you simply need to open the program and select the 'Installed' option from the menu on the left which will then populate the list on the right whose items will all have those green rectangles to the left of their name(the green rectangle means they are installed). With Aptitude it's just as easy (although maybe not as pleasing to the eyes) but the lists are more specific. To see them you run the 'aptitude' command in a terminal, select 'Installed Packages', then the type of package you want to see and finally you select to see the list from a few options differing in whether or not they are supported and whether or not they are free. Using the command-line utilities it is just as simple to obtain a list of installed packages. Using dpkg, run 'dpkg -l' or 'dpkg --get-selection' if you want something less descriptive. It seems that there is no 'APT' way to get a listing but I figure that is because it would be redundant; APT is built on dpkg which already has this functionality so I guess they decided that people will just have to use dpkg<ref name="WikipediaAPT" >Wikipedia APT description</ref>.

     Using Synaptic to install and remove packages is quite easy; if you click the rectangle to the left of the package name you will be given a list of appropriate options such as marking for installation or removal of which you would select what you want to do; you then click the 'Apply' button at the top of the window (the button with the green checkmark), then confirm what you want to add/remove. Note 'mark for removal' and 'mark for complete removal' both remove the package, but the complete removal will remove all files related to the package like configuration files and user-created data. Using Aptitude to install and remove packages is pretty straightforward but you have to select the 'Become root' option from the 'Actions' menu to do it; to add a package, you navigate to it from the menu/listings and select it for installation (most easily done by using the '+' button); to remove packages you navigate to them and deselect them (most easily done using '-' button); When you've finished selecting/deselecting other packages, you press 'g' to actually add or remove the packages. Note that these things can also be done through the menu at the top, but it is easier to do it with the keyboard.

     Using APT to add and remove packages is also easy; to add a package, run 'apt-get install package name ' (note that 'apt-get install package name-' will remove package name); to remove packages fully (even configuration files) run 'apt-get --purge remove package name ' (note that 'apt-get install package name+' will add package name) and to leave the configuration files in, don't use the purge option<ref name="DebianAPT" >Debian APT Obsolete Documentation (the reported APT instructions still work at time of writing though)</ref>. The harder part would be finding the package you want to install, but the available packages can be listed with 'apt-cache pkgnames'<ref name="APTCache" >How to use APT to list available packages</ref>. For adding and removing using dpkg use 'dpkg -i package.deb ' and 'dpkg --remove package ' or 'dpkg --purge package ' respectively. Note that the package must already be downloaded for you to be able to install it as reported in section 14.5 of Debian Tutorial (Obsolete Documentation)Chapter 14 - Removing and installing software (although the documentation is marked as obsolete, the information about dpkg seems to be accurate). Refer to The Debian GNU/Linux FAQ Chapter 8 - The Debian package management tools for more details on dpkg.

     I would say the distribution offers an extensive catalog of applications. It does not cover everything, but it covers a lot. Let us remember that being lightweight is not really one of the design goals of this distribution, but this distribution does have a design goal. It is not meant to do everything. As such, it does not have many math applications, or physics simulators, or programming development environments but it is definitely not running on the bare-minimum! It's software encompasses multimedia (including photography and torrent applications), game emulators, access to the internet and browsers, e-mail applications, space simulators, geometry programs, calculators, text editors, printers/scanners, Linux terminal and even Windows software through 'Wine'. In other words, I would say that this distribution has a broad catalog of software as it does not not have one. It is not running on just the essentials and it is not particularly specially optimized for performance. In my opinion, something that comes installed with only basic utilities for user interaction (essentially a terminal, a web browser, a text editor and maybe a calculator or paint), something with as few packages as a user will allow would be a distribution that does not have an extensive catalog. As for the actual number of installed packages, I cannot say for sure as Synaptic and Aptitude report different numbers; Synaptic reports 6110 installed and Aptitude reports 3118 actual packages and 3857 virtual packages (according to Aptitude's menu description, 'virtual packages don't exist, they are names other packages use to require or provide some functionality').

Major Package Versions

Package Information For Some of the Major Software Packages Included as Part of the Standard Install

Package

Version

Upstream Source URL

How I Gathered This Information

GNU/Linux kernel 2.6.38-12-generic

2.6.38-12.51-Ubuntu

http://us.archive.ubuntu.com/ubuntu/dists/natty-security/main/

Using the uname command together with Synaptic

libc6

2.13-0ubuntu13

(Synaptic)http://us.archive.ubuntu.com/ubuntu/dists/natty/main/, (apt-cache show libc6, homepage)http://www.eglibc.org/home

Using the lab 4 solutions together with Synaptic

csh

20070713-2ubuntu1

http://us.archive.ubuntu.com/ubuntu/dists/natty/universe/

Synaptic

tcsh

6.17.02-4ubuntu1

http://us.archive.ubuntu.com/ubuntu/dists/natty/universe/

Synaptic

bash

4.2-0ubuntu3

http://us.archive.ubuntu.com/ubuntu/dists/natty/main/

Synaptic

mono-csharp-shell

2.6.7-5ubuntu3

http://us.archive.ubuntu.com/ubuntu/dists/natty/main/

Synaptic

zsh

4.3.11-4ubuntu2.is.3ubuntu1

http://us.archive.ubuntu.com/ubuntu/dists/natty/main/

Synaptic

dash

0.5.5.1-7.2ubuntu1

http://us.archive.ubuntu.com/ubuntu/dists/natty/main/

Synaptic

busybox-static

1:1.17.1-10ubuntu1

http://us.archive.ubuntu.com/ubuntu/dists/natty/main/

Synaptic

busybox-initramfs

1:1.17.1-10ubuntu1

http://us.archive.ubuntu.com/ubuntu/dists/natty/main/

Synaptic

binutils

2.21.0.20110327-2ubuntu3

http://us.archive.ubuntu.com/ubuntu/dists/natty-updates/main/

Synaptic

valgrind

1:3.6.1-0ubuntu1

http://us.archive.ubuntu.com/ubuntu/dists/natty/main/

Synaptic

subversion

1.6.12dfsg-4ubuntu2.1

http://us.archive.ubuntu.com/ubuntu/dists/natty-security/main/

Synaptic

gdb

7.2-1ubuntu11

http://us.archive.ubuntu.com/ubuntu/dists/natty/main/

Synaptic

gcc-4.5

4.5.2-8ubuntu4

http://us.archive.ubuntu.com/ubuntu/dists/natty/main/

Synaptic and 'gcc --version

dbus

1.4.6-1ubuntu6.1

http://us.archive.ubuntu.com/ubuntu/dists/natty-security/main/

Synaptic

dpkg

1.16.0~ubuntu7.1

http://us.archive.ubuntu.com/ubuntu/dists/natty-updates/main/

Synaptic

apt

0.8.13.2ubuntu4.2

http://us.archive.ubuntu.com/ubuntu/dists/natty-security/main/

Synaptic

synaptic

0.75.1ubuntu2

http://us.archive.ubuntu.com/ubuntu/dists/natty/main/

Synaptic

rpm

4.8.1-6ubuntu1

http://us.archive.ubuntu.com/ubuntu/dists/natty/main/

Synaptic

alien

8.83

http://us.archive.ubuntu.com/ubuntu/dists/natty/main/

Synaptic

Initialization

References

<references />