Hub Help Page hub --usage is an aliase for the 'hub usage' command hub --help is an aliase for the 'hub help' command hub --version is an aliase for the 'hub version' command hub usage List the syntax of all the hub commands. hub help [] List the help for a command or all commands if none specified. See "hub usage" for a command-syntax summary. hub version List the version information. hub default [|-] (Needs to be run as root.) If no arguments are given then this command lists the the default global hub for the system (i.e., the default global hub used to set up each user's 'home' hub). If a global hub is specified then will become the default global hub. If a '-' is specified then any older default settings are discarded and the system default re-established. hub ls [-a] [-q] List the user hubs belonging to the logged in user and all of the global hubs. If -a is specified then all hubs are listed, otherwise the hidden hub (those starting with "__") are ommitted. Normally the locked status and any comments associated with the hub are displayed, but these will be ommitted if the -q flag is given. hub set [|-] Set the 'current' hub for a directory and its sub-directories. The HUB environment variable can be set to a hub name to override this setting. '^' can genereally be specified in place of // in a hub command to refer to the current hub. hub info [] Describe a hub. (See 'hub set' on how to set the current hub.) (See 'hub set' on how to set the current hub.) hub lock [] Lock a hub so that it can not be removed or renamed or have packages added or removed. (See 'hub set' on how to set the current hub.) hub unlock [] Remove the lock from a hub. (See 'hub lock' on locking a hub and 'hub set' on how to set the current hub.) hub name List the name of the current hub. (See 'hub set' on how to set the current hub.) hub path [] List the path of the XML file defining the named or current hub. (See 'hub set' on how to set the current hub.) hub xml [] List the contents of the XML file defining the named or current hub. (See 'hub set' on how to set the current hub.) hub init [-n []] hub init [-s] [] The first form creates a new user hub with some unique name __h and associates the current working directory with the new hub. If a hub is specified then that determines the global hub for the new hub otherwise the current defaulkt hub is used. The second from creates the new named user hub . If is specified then the global hub for the new hub is determined by this hub otherwise the default hub is used. Iff --set is specified the hub associated with the current directory is set to the new hub. (See 'hub set' on how to set the current hub.) hub comment [] Set the comment string for a user hub. (See 'hub set' on how to set the current hub.) hub cp [] Duplicate (or the current hib) in . (See 'hub set' on how to set the current hub.) hub mv [] Rename user hub (or the current hub) to . (See 'hub set' on how to set the current hub.) hub rm Delete user hub . hub swap [] Swap the contents of user hub (or the current hub) with user hub . (See 'hub set' on how to set the current hub.) hub list [] List the packages belonging to a hub (calls 'ghc-pkg list'). (See 'hub set' on how to set the current hub.) hub check [] Check the packages belonging to a hub are coherent (calls 'ghc-pkg check'). (See 'hub set' on how to set the current hub.) hub install ... Equivalent to: hub install-into ^ ... hub install-into ... Uses 'cabal install' to install the named packages into a user hub. (See 'hub set' on how to set the current hub.) hub erase ... Equivalent to: hub esase-from ^ ... hub erase-from [-f] ... Run the garbage collector on the user hubs to reclaim library code that is no longer referenced by them. (The directories aren't removed from the file system, but moved from `~/.hubrc/heap` to `~/.hubrc/garbage` for manual removal.) (See 'hub set' on how to set the current hub.) hub gc Run the garbage collector to reclaim library code that is no longer referenced by the hubs. hub save [] Save out the configuration of the hub onto standard output. (See 'hub set' on how to set the current hub.) hub load [] Load the hub from standard input. If the named hub doesn't exist then the hub is created with the global hub specified by the archive. If does exist then it is checked that it is using the global hub specified and if necessary removed and recreated referencing the right global hub. Any surplus packages not mentioned in the archive are then removed. Finally any packages missing from the hub listed in the archive are installed with cabal-install. (See 'hub set' on how to set the current hub.) hub verify [-s] [] Check that the named hub (or the default hub) uses the global hub specified in the archive and that it contains all of the packages at the versions specified by the archive. If -s is specified then check that the hub contains no packages other than those specified by the archive. (See 'hub set' on how to set the current hub.)