Difference between revisions of "ROX"

From ArchWiki
Jump to: navigation, search
m (Updates: suppress `)
m (Removed the rest of Nibelungen cycle. Other style fixes.)
Line 9: Line 9:
 
{{Article summary end}}
 
{{Article summary end}}
  
From [http://roscidus.com/desktop/ ROX Desktop | ROX Desktop]:
+
From the project [http://rox.sourceforge.net/desktop/|home page]:
  
:''ROX is a fast, user friendly desktop which makes extensive use of drag-and-drop. The interface revolves around the file manager, or filer, following the traditional Unix view that 'everything is a file' rather than trying to hide the filesystem beneath start menus, wizards, or druids. The aim is to make a system that is well designed and clearly presented. The ROX style favors using several small programs together instead of creating all-in-one mega-applications.''
+
: ''ROX is a fast, user friendly desktop which makes extensive use of drag-and-drop. The interface revolves around the file manager, or filer, following the traditional Unix view that 'everything is a file' rather than trying to hide the filesystem beneath start menus, wizards, or druids. The aim is to make a system that is well designed and clearly presented. The ROX style favors using several small programs together instead of creating all-in-one mega-applications.''
 
+
From [http://roscidus.com/desktop/about_rox About ROX | ROX Desktop]:
+
 
+
:''Traditionally, Unix users have always based their activities around the filesystem. Just about everything that's anything appears as a file: regular files, hardware devices, and even processes on many systems (for example, inside the {{ic|/proc}} filesystem on Linux).''
+
 
+
:''However, recent desktop efforts (such as KDE and GNOME) seem to be following the Windows approach of trying to hide the filesystem and get users to do things via a Start-menu or similar. Modern desktop users, on Windows or Unix, often have no idea where their programs are installed, or even where their data files are saved. This leads to a feeling of not being in control, and a poor understanding of how the system works.''
+
 
+
:''The ROX Desktop, however, is based around the filesystem. Its core component is ROX-Filer, a powerful graphical file manager which, in addition to being a popular filer in its own right, provides a couple of extra features which allow it to solve the above problems...''
+
  
 
== Installation ==
 
== Installation ==
Line 42: Line 34:
 
  $ gpg zeroinstall-injector-0.26.tar.gz.gpg
 
  $ gpg zeroinstall-injector-0.26.tar.gz.gpg
  
You can stuff everything in a new directory like I did, or sit in {{ic|$HOME}}. Then extract and cd into the extracted directory.
+
You can stuff everything in a new directory, or sit in {{ic|$HOME}}. Then extract and change directory into the extracted directory.
  
Fun python install stuff:
+
Python install stuff:
 
  # python setup.py install
 
  # python setup.py install
  
Actually installing and using things is a little different, just read this:
+
Actually installing and using things is a little different, just read this: http://www.0install.net/injector-using.html.
http://www.0install.net/injector-using.html
+
  
 
== Usage ==
 
== Usage ==
Line 54: Line 45:
 
=== File manager ===
 
=== File manager ===
  
To execute rox, simply type:
+
To execute ROX, simply type:
 
  $ rox
 
  $ rox
  
 
=== Desktop environment ===
 
=== Desktop environment ===
  
You need to run rox before your window manager. Here is an example line, using openbox as the WM:
+
You need to run ROX before your window manager. Here is an example line, using Openbox as the WM:
 
  rox -b Default -p default; exec openbox
 
  rox -b Default -p default; exec openbox
  
 
=== Mounting with static mountpoints ===
 
=== Mounting with static mountpoints ===
  
Rox supports mounting and unmounting devices in {{ic|/etc/fstab}}, simply by clicking on the mount directory. For instance, you can create a directory {{ic|/mnt/cdrom}}, and set up an fstab entry like so:
+
Rox supports mounting and unmounting devices in {{ic|/etc/fstab}}, simply by clicking on the mount directory. For instance, you can create a directory {{ic|/mnt/cdrom}}, and set up an {{ic|fstab}} entry like so:
  
 
  /dev/sr0 /mnt/cdrom auto noauto,user,ro 0 0
 
  /dev/sr0 /mnt/cdrom auto noauto,user,ro 0 0
Line 72: Line 63:
 
=== Mounting with pmount ===
 
=== Mounting with pmount ===
  
Static mountpoints in fstab are obviously somewhat inflexible; mounting two USB sticks at once, for instance, would require fstab entries for both USB sticks. Fortunately, Rox lets you create custom right-click menu entries for files, including device nodes in /dev. Thus, you can use custom menu entries that invoke the pmount and pumount commands to mount and unmount drives.
+
Static mountpoints in {{ic|fstab}} are obviously somewhat inflexible; mounting two USB sticks at once, for instance, would require {{ic|fstab}} entries for both USB sticks. Fortunately, ROX lets you create custom right-click menu entries for files, including device nodes in {{ic|/dev}}. Thus, you can use custom menu entries that invoke the ''pmount'' and ''pumount'' commands to mount and unmount drives.
  
To do this, install the pmount package, then open up /dev in Rox and right-click on a block device node (e.g. /dev/sr0). Enter the file menu and click on "Customize Menu." A window will appear in which you can create files that will invoke the necessary commands. Create, and then make executable, the following files:
+
To do this, install the ''pmount'' package, then open up {{ic|/dev}} in ROX and right-click on a block device node (e.g. {{ic|/dev/sr0}}). Enter the file menu and click on ''Customize Menu''. A window will appear in which you can create files that will invoke the necessary commands. Create, and then make executable, the following files:
  
{{hc|mount.sh|<nowiki>
+
{{hc|mount.sh|2=
 
#!/bin/sh
 
#!/bin/sh
 
pmount "$@"
 
pmount "$@"
</nowiki>}}
+
}}
  
{{hc|umount.sh|<nowiki>
+
{{hc|umount.sh|2=
 
#!/bin/sh
 
#!/bin/sh
 
pumount "$@"
 
pumount "$@"
</nowiki>}}
+
}}
  
 
If you want your mount directories to use device labels or UUID use this mount script instead:
 
If you want your mount directories to use device labels or UUID use this mount script instead:
{{hc|mount.sh|<nowiki>
+
{{hc|mount.sh|2=
 
#!/bin/bash
 
#!/bin/bash
  
 
#Get device label using blkid
 
#Get device label using blkid
blkid -o value -s LABEL "$@" > /tmp/roxmount.tmp.$$
+
blkid -o value -s LABEL "$@" > /tmp/roxmount.tmp.$$
 
LABEL=$(cat /tmp/roxmount.tmp.$$)
 
LABEL=$(cat /tmp/roxmount.tmp.$$)
  
 
#Use UUID if no label is set
 
#Use UUID if no label is set
if [ -z $LABEL ]
+
if [ -z $LABEL ]; then
  then
+
    blkid -o value -s UUID "$@" > /tmp/roxmount.tmp.$$
  blkid -o value -s UUID "$@" > /tmp/roxmount.tmp.$$
+
    LABEL=$(cat /tmp/roxmount.tmp.$$)
  LABEL=$(cat /tmp/roxmount.tmp.$$)
+
 
fi
 
fi
  
 
#Ask for mount name if no LABEL/UUID is found (NEEDS xdialog package installed)
 
#Ask for mount name if no LABEL/UUID is found (NEEDS xdialog package installed)
if [ -z $LABEL ]
+
if [ -z $LABEL ]; then
  then
+
    Xdialog --title "Input Parameters" --inputbox "Enter a mount name" 0 0 2> /tmp/roxmount.tmp.$$
  Xdialog --title "Input Parameters" --inputbox "Enter a mount name" 0 0 2> /tmp/roxmount.tmp.$$
+
    LABEL=$(cat /tmp/roxmount.tmp.$$)
  LABEL=$(cat /tmp/roxmount.tmp.$$)
+
 
fi
 
fi
  
 
#Mount the device
 
#Mount the device
 
pmount "$@" $LABEL
 
pmount "$@" $LABEL
</nowiki>}}
+
}}
  
You will now be able to mount device nodes to appropriately named directories in {{ic|/media}}, and unmount them as necessary, using the new menu entries. For convenience, you should probably also change the mount and unmount commands in Rox's configuration (under "Action Windows") to "pmount" and "pumount"; this will let you unmount devices via the mount directory's right-click menu.
+
You will now be able to mount device nodes to appropriately named directories in {{ic|/media}}, and unmount them as necessary, using the new menu entries. For convenience, you should probably also change the mount and unmount commands in ROX's configuration (under ''Action Windows'') to ''pmount'' and ''pumount''; this will let you unmount devices via the mount directory's right-click menu.

Revision as of 22:25, 13 November 2013

Tango-edit-clear.pngThis article or section needs language, wiki syntax or style improvements.Tango-edit-clear.png

Reason: please use the first argument of the template to provide a brief explanation. (Discuss in Talk:ROX#)
Template:Article summary start

Template:Article summary text Template:Article summary text Template:Article summary heading Template:Article summary text Template:Article summary end

From the project page:

ROX is a fast, user friendly desktop which makes extensive use of drag-and-drop. The interface revolves around the file manager, or filer, following the traditional Unix view that 'everything is a file' rather than trying to hide the filesystem beneath start menus, wizards, or druids. The aim is to make a system that is well designed and clearly presented. The ROX style favors using several small programs together instead of creating all-in-one mega-applications.

Installation

ROX can be installed with the package rox, available in the official repositories.

Alternatively, you can install it through Zero Install.

Zero install

Arch Linux does not exactly have a known zero-install package, so this can be a problem.

Make sure you have installed these packages: python gnupg pygtk.

Download the GPG key

$ gpg --recv-key --keyserver www.keyserver.net 59A53CC1

Download the actual 'injector'.

$ wget http://osdn.dl.sourceforge.net/sourceforge/zero-install/zeroinstall-injector-0.26.tar.gz.gpg

Check the signature using GPG, if you care.

$ gpg zeroinstall-injector-0.26.tar.gz.gpg

You can stuff everything in a new directory, or sit in $HOME. Then extract and change directory into the extracted directory.

Python install stuff:

# python setup.py install

Actually installing and using things is a little different, just read this: http://www.0install.net/injector-using.html.

Usage

File manager

To execute ROX, simply type:

$ rox

Desktop environment

You need to run ROX before your window manager. Here is an example line, using Openbox as the WM:

rox -b Default -p default; exec openbox

Mounting with static mountpoints

Rox supports mounting and unmounting devices in /etc/fstab, simply by clicking on the mount directory. For instance, you can create a directory /mnt/cdrom, and set up an fstab entry like so:

/dev/sr0 /mnt/cdrom auto noauto,user,ro 0 0

Clicking on /mnt/cdrom will now automatically mount whatever data disk is in your first CD drive.

Mounting with pmount

Static mountpoints in fstab are obviously somewhat inflexible; mounting two USB sticks at once, for instance, would require fstab entries for both USB sticks. Fortunately, ROX lets you create custom right-click menu entries for files, including device nodes in /dev. Thus, you can use custom menu entries that invoke the pmount and pumount commands to mount and unmount drives.

To do this, install the pmount package, then open up /dev in ROX and right-click on a block device node (e.g. /dev/sr0). Enter the file menu and click on Customize Menu. A window will appear in which you can create files that will invoke the necessary commands. Create, and then make executable, the following files:

mount.sh
#!/bin/sh
pmount "$@"
umount.sh
#!/bin/sh
pumount "$@"

If you want your mount directories to use device labels or UUID use this mount script instead:

mount.sh
#!/bin/bash

#Get device label using blkid
blkid -o value -s LABEL "$@" > /tmp/roxmount.tmp.$$
LABEL=$(cat /tmp/roxmount.tmp.$$)

#Use UUID if no label is set
if [ -z $LABEL ]; then
    blkid -o value -s UUID "$@" > /tmp/roxmount.tmp.$$
    LABEL=$(cat /tmp/roxmount.tmp.$$)
fi

#Ask for mount name if no LABEL/UUID is found (NEEDS xdialog package installed)
if [ -z $LABEL ]; then
    Xdialog --title "Input Parameters" --inputbox "Enter a mount name" 0 0 2> /tmp/roxmount.tmp.$$
    LABEL=$(cat /tmp/roxmount.tmp.$$)
fi

#Mount the device
pmount "$@" $LABEL

You will now be able to mount device nodes to appropriately named directories in /media, and unmount them as necessary, using the new menu entries. For convenience, you should probably also change the mount and unmount commands in ROX's configuration (under Action Windows) to pmount and pumount; this will let you unmount devices via the mount directory's right-click menu.