G ZyX
G-ZyX(tm) Release Notes

version: 0.5.004 "Kablui-One(alhpa4)" 2007.09.08


Disclaimer

This fourth alpha release of G-ZyX is still a work in progress, though the extreme disclaimer of the prior release no longer applies. This release was produced on a non-internet-connected system, in a minimally secure fashion. For further details, refer to the Security Considerations section near the end of these release notes. However, still being a very early development release, the usual disclaimers apply. I.e. only use this software on a system which you either have backed up, or don't care much about the data.

Introduction

Yes indeed, G-ZyX is yet another LiveCD. Currently G-ZyX is merely a research platform for my experimental enhancements to a Fedora(tm)-7 derived, Linux(tm) based, operating system distribution. Ultimately I hope that the infrastructure I've developed to create this platform, can be used by others to create countless special purpose mini-forks of the mainstream GNU/Linux operating system distributions such as Fedora(tm), CentOS(tm), Debian(tm), Ubuntu(tm), and others. It is my vision that ultimately every sysadmin, and even most users, will maintain their own mini-fork, rather than installing a mainstream distro, and repeatedly making their same preferential customizations to it after every install. Time will tell if this is prophesy or madness ;)

Platform Computing

There are three main platforms that comprise the framework for what you are looking at. At the lowest level, is the VirOS distribution generation system. This piece of software, takes as input, an existing OS distribution such as Fedora(tm), or Ubuntu(tm), and outputs a customized LiveMedia (e.g. LiveCD) OS distribution. In this case, the input was Fedora-7, and the output, built on Fedora-7, I call the G-ZyX distribution. Finally, on top of the middle G-ZyX platform, is the uppermost layer, what I call K.A.B.L.U.I. Kablui stands for Kick Ass Best LiveOS User Interface, and currently represents a set of Gnome desktop preferences and configuration, along with a set of default applications and their configuration.

Because VirOS is merely the tool used to put together the useful product in front of you, I won't go into much detail, other than to say that the Fedora project's livecd-tools package provides similar functionality. If you would like to learn more about what VirOS can do, please visit -

http://viros.org

What is G-ZyX?

As mentioned, the G-ZyX OS, is merely a derivative of Fedora-7, which maintains software repository compatibility. As such, it fundamentally just represents the selection of packages(software) which I find most useful as an initial starting point for my own desktop and server computers. In addition, it is locked down, in the manner that I think is best for an initial deployment. For more information on the security aspects and implications of G-ZyX, see the Security Considerations section at the end of these release notes.

What is K.A.B.L.U.I.?

Finally, there is Kablui. Beyond being a somewhat silly acronym, Kablui is a set of Desktop preferences, which help me to be much more efficient when using computers. I like to type. I like command lines. It is entirely possible if not probable, that after trying out Kablui, you decide that it is not for you, and that you prefer the more traditional Gnome desktop defaults. This is fine, and why I have not made Kablui preferences into the system defaults. If you like them, when you log in as a newly created user, merely run the program "kablui" to import the preferences.

Here is the list Kablui enhancements, and design philosophies-

1) The Matrix

The Matrix represents the focus on the use of ctrl+arrows keyboard shortcuts.

In kablui, there are by default 7 virtual desktops, which can be navigated with the ctrl-up and ctrl-down shortcuts. Typically, you will keep your favorite applications in full screen mode, in their own virtual desktop, and use ctrl-up and ctrl-down to switch amongst them. By default, the kablui desktops are prepopulated with
The second half of the matrix, is the horizontal component. Kablui has set the keyboard shortcuts for popular applications such as Gnome-Terminal and Mozilla Firefox, so that ctrl-left and ctrl-right cycle between tabs.

In this fashion, you can think of the desktop as a grid or matrix, where rows are the main applications, and the columns are multiple instances (tabs) of those applications.

To try this out, use the ctrl-t shortcut in both gnome-terminal and Mozilla Firefox to open several tabs. Then see how easy and logical it is to switch amongst all of these tabs and between applications with ctrl-up/down/left/right.

2) The Vertical Panel

The second key element of kablui is replacing the default upper and lower Gnome panels, with a single vertical panel on the left, combined with the ZyX drawer applet in the lower left corner.

The main justification for the choice of vertical panel, other than a subjective aesthetic preference on my part, is the fact that more and more displays these days have a larger aspect ratio (e.g. 16x9 instead of the more traditional 4:3). Combine this with the fact that applications such as web browsing seem to benefit more from greater vertical screen usage, than horizontal screen usage, and you hopefully understand why I made the choice I did.

Now, lets take a look at what is present in the vertical panel:

3) The ZyX Drawer

The main design motivation for moving application launchers and less frequently used panel applets to the ZyX drawer, is the idea that they should not be permanently wasting screen real estate, given how often they are needed. In general, the assumption is that you will have all of your main applications already open in the many virtual desktops, especially since Kablui automatically starts the most common ones when you log in. In the default ZyX drawer, you will find the following:

ZyX Rebootless Installer

In my opinion, the most dramatic feature of G-ZyX is the ZyX Rebootless Installer. While the recent advent of installable LiveCDs is very cool, I decided to remove what I considered to be a glaring rough edge from the process. The fact that I use GNU/Linux as much as I do, is probably entirely due to how annoyed I was at previous versions of winblowz, and how often they needed to be rebooted. Thus, any time I am forced to reboot, I ask myself- could it have possibly been avoided with better software? What I discovered after asking myself that question, was that the traditional reboot required after a LiveCD installation, is not strictly necessary in the typical case. Eventually I plan to add this "Rebootless LiveOS Installer" functionality into the standard Anaconda installer, as a mere checkbox option. But for now, I have a simple proof of concept implementation, available from the G-ZyX menu which is the first item in the Main Menu. This simple application will prompt you for a destination partition, and confirmation. If you proceed, the very same LiveOS that you are looking at, will be installed, or "live migrated" to the destination disk partition. Once the install completes, you can eject the LiveCD or remove the LiveUSB, and go about your business, *without having to reboot*!!! I think thats really cool. For the details of my long saga pursuing this feature, please refer to the development mailinglist archives of fedora-livecd-list@redhat.com.

Snake3D

In contrast with the rebootless installer, perhaps the least significant custom feature of G-ZyX is the inclusion of my first 3D video game, Snake3D, also available via the G-ZyX menu. I wrote this just before the turn of the millenia, to prove to myself that I could write a 3D video game. It is nothing more than a copy of a simple video game from my first cell phone - a nokia 5190. And that was without a doubt a copy of prior versions of the same game.

Security Considerations

Production
G-ZyX was produced on a non-internet-connected system, built from scratch. The system was left unattended for various amounts of time for a few weeks between installation, and its use in the production of G-ZyX. Therefore I cannot personally vouch that any FBI/CIA/NSA/Mafia/Miscreant-next-door-teenager sneak-and-peak-and-god-knows-what-else warrants were not executed. For the beta release I intend to install and configure the production system from scratch immediately prior to production, to mitigate those (paranoid/minor) risks. The following procedure was used to ensure that no corrupted software was used to produce G-ZyX:

Lockdown
Certain services and configuration that I deemed unnecessary were removed from the default Fedora style installation. Some other day when I'm not tired of writing release notes, I'll enumerate. For now, use chkconfig --list, iptables -L, ps auwwxf, etc... to investigate the security configuration of G-ZyX.

Alpha Status / Known Issues

lots probably...

Enjoy!

I hope you enjoy your experience with G-ZyX and Kablui. For further information, please refer to the following resources-

Release Notes Last Modified - 2007/09/08 by Douglas McClendon