CLIX

CLIX Main
CLIX Starter Kit
CLIX Bibliography
 

CLIX is a graphics based command line interface for OS X that harnesses the power of Unix - a great way for beginners to get acquainted with Unix and an indispensable work of reference for the Unix professional.

Startup & Operation

CLIX starter files are included in this package. They will clue you in to how CLIX works.

Commands in the files are divided into categories such as Clean, Disk, Dock, Finder, Global, Log, Network, Purge, Safari, and System; you're free to change these or make new categories yourself. Each command has a title and a description more often than not taken directly from the command's 'man page'.

Browse through the commands until you find something of interest, then double-click to bring up the command console. Commands can be run 'as is' and their output copied to the clipboard for pasting into a text editor.

The command lines are exactly as they would appear at a Unix console such as Terminal.app; all you do is hit the Run button. If you want to stop execution of a command, hit Stop.

Your Sudo Passphrase

Some commands are prefixed with the sudo command. For these to work, you need to have submitted your sudo passphrase to CLIX (⌥⌘P). You need to submit this passphrase only once, and its duration is five minutes after last submission, exactly like it is with the real command line. The difference here is that CLIX will submit your passphrase whenever you need it, so you'll never be bothered by that prompt ever again.

If you've never run sudo before, you'll be given the usual warning from the built-in system administrator, and CLIX will see you get it.

Your passphrase is neither typed in the clear nor ever saved to disk, so it's gone with the rest of the program when you exit.

Note the accent on 'passphrase' rather than 'password': to the extent you can get your version of OS X to accept longer passwords and passphrases, use it. Make your password or passphrase as easy as possible to remember and as difficult as possible to guess. Use phrases if at all possible. No password or passphrase is ever completely secure - they're 'speed bumps' - but ideally they reduce the likelihood of your being compromised.

Sudo Passphrase Prompt

By default your system should prohibit set ID scripts.

$ sysctl kern.sugid_scripts | sed s/'kern.sugid_scripts: '//

And you should never run sudo inside any external script; but you should guard your external scripts by making them read only and owned by root (0550). Another good tip is to include a line to reset ownership and mode on every run and check regularly for signs of malfeasance.

But CLIX can go you one better by alerting you when you're being prompted for your sudo passphrase. You can then choose to allow once, allow all, or deny.

Run the following command from within CLIX and it will immediately take effect.

defaults write com.rixstep.CLIX SudoAlert 1

[Note this isn't foolproof: a malfeasant sufficiently acquainted with your computing habits can delete the preferences file. Safest of all is to always manually check external scripts before running or better yet to not run external scripts at all.]

Safety First

CLIX clears your passphrase if your computer goes into sleep mode and also clears your system sudo time stamp. Whoever next accesses your computer through either CLIX or Terminal will have to submit your passphrase again.

So you needn't worry anymore about interlopers accessing and taking advantage of your unattended machine: if you need to leave in a hurry, just put it to sleep.

How It Works

CLIX command entries contain a title, a category, a description, and finally a command line. The first three fields are arbitrary but left for your convenience so you can sort things better and find them faster.

It is the command line, however, which will be run, the output of which will appear in the dedicated field in CLIX's command console.

The starter CLIX files already come with a plethora of useful system commands; you are encouraged to add your own, in new files or the same file, to copy and paste and drag and drop between files, and so forth.

Whatever way you find best to order things is OK by CLIX.

Manpage Help

Click in the lower left corner of the CLIX command sheet to summon forth the manpage help control; once it appears, type in your keyword, prefix with a specific page number (or '-a' for all pages) and hit Enter.

You can also use the '-k' switch to get an 'apropos' listing.

CLIX & ManOpen

CLIX can also open manpages in ManOpen, a GUI viewer for Unix manpages available at clindberg.org. Commands to control the CLIX interface with ManOpen are found in the file '_mo.clix'.

ManOpen doesn't understand the '-a' (all pages) switch but its behaviour is otherwise identical.

[Note: you don't need 'openman' from the ManOpen package for this interface to work.]

Context Sensitive Help

You can also ⌥ (option) double-click a word in the command line field to invoke the default help system; ⌘ (cmd) double-click will give you 'apropos' information.

Output Colours

The command sheet output view can be coloured both for ordinary output and for manpage output. The configuration for these colours (both background and text) are normally set in the application's Info.plist.

<key>OutputRGB</key>
<array>
    <string>0 0 30</string>
    <string>153 153 255</string>
    <string>30 30 0</string>
    <string>255 255 153</string>
</array>

The array of colours represents background and text colours for ordinary output and for manpage output in that order. The values are standard 'RGB' values extending from 0 to 255.

The array may or may not be initialised in your downloaded copy of CLIX; to disable its use simply place an 'x' in front of the key name.

<key>xOutputRGB</key>

To enable it simply remove the 'x' again.

Note: these values are nested inside the key 'RxDefaults' which is read by the ACP framework on startup; exit and restart CLIX to see your changes.

Caution & Wisdom

Maybe you remember the prompt you got the first time you tried sudo.

We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these two things:

        #1) Respect the privacy of others.
        #2) Think before you type.

It's cute and it has a point or two - and not just to keep your nose out of other people's files, but to remember how powerful this operating system is.

And outside the comfortable confines of your GUI there are no forgiveness principles, cancel buttons, progress indicators, or any lifelines if you should do something wrong.

So yes, Unix is a lot of fun, and it's raw power at your fingertips like never before, but be careful - think before you type.

Teach Others To Fish

Think you have a few clever commands of your own? Send them to the CLIX repository! Select up to ten commands at a time and hit ⇧@ ('Submit Commands' on the Help menu) and off they go.

Fish, Fishing Poles, Lines

Selling a man a fish when it's easy to learn how to fish oneself is a rip-off. Still, there are times when one needs to throw that man a line. And as things get more complicated, keeping all those commands in mind becomes a bit of a burden. It's far easier to have a work of reference to find the command you're looking for than to struggle with man pages all through the night. Keep your mind free for what's really important to you.

The starter CLIX files are just that and no more: they're starters, a starting point. You're encouraged to place these CLIX files wherever you wish, and divide the commands up into different categories in different files, and so forth. By organising it all as you find easiest, you're bound to win in the long run.

You'll have fish to eat, have a diploma in advanced fishing, and always have a line at the ready in case you need it.

RxDefaults

The following settings can be used to configure the behaviour of this application. The ACP Framework automatically loads settings found under this key in Info.plist.

Construct Displays alternate icon and 'Matrix' command sheet output.
OutputRGB Background/foreground colours for command output and manpage output given as decimal RGB values.
RunHotKey Sets the shortcut ⌘↩ for 'run' on the command sheet.
SudoAlert CLIX prompts each time it's being asked for your passphrase.

 

Copyright © Rixstep. All rights reserved.