darwinup man page on MacOSX

Man page or keyword search:  
man Server   23457 pages
apropos Keyword Search (all sections)
Output format
MacOSX logo
[printable version]

darwinup(1)		  BSD General Commands Manual		   darwinup(1)

NAME
     darwinup — Install, uninstall, and manage roots

SYNOPSIS
     darwinup [-dfnv] [-p path] subcommand [arguments ...]

DESCRIPTION
     darwinup allows you to manage roots, or archives, of files that replace
     parts of your system. This is useful for installing a new version of a
     library or tool on your system while allowing you to uninstall the files
     and revert back to the originals safely and easily.

OPTIONS
     -d	      Do not run helpful automation. See HELPFUL AUTOMATION below.

     -f	      Force. Some operations will fail gracefully due to potentially
	      unsafe situations, such as a root that installs a file where a
	      directory is.  In order to have darwinup continue through such a
	      situation, you can pass the -f option.

     -n	      Dry run. Darwinup will go through an operation, including ana‐
	      lyzing the root(s) and printing the state/change symbol, but no
	      files will be modified on your system and no records will be
	      added to the depot.  This option implies -d.

     -p [path]
	      Prefix path. Normally, darwinup will operate on the boot parti‐
	      tion. You can use the -p option to have darwinup work on another
	      partition. You can provide any arbitrary path, it does not need
	      to be a mount point.

     -r	      Restart. Gracefully restart after all operations are complete by
	      telling Finder to restart.

     -v	      Verbose. This option causes darwinup to print extra information.
	      You can pass 2 or 3 v's for even more information, but that is
	      usually only needed for development and debugging of darwinup
	      itself.

SUBCOMMANDS
     Note that the path and archive options listed below support globbing and
     multiple items. See the EXAMPLES section below for more details.

     files archives
	      List the files and directories in the archive.

     install path
	      Install the root at path.

     list [archive]
	      List archives that are installed. You may optionally provide an
	      archive specification to limit which archives get listed.

     rename archive name
	      Rename an archive.

     uninstall archives
	      Uninstall the specified archive.

     upgrade path
	      Find the last archive that was installed with the same name
	      (basename of path), and replace it with the root at path.

     verify archive
	      List all of the information about archive.  This includes status
	      letters detailing how the archive differs from whats on disk

STATE/CHANGE SYMBOLS
     ?	      Unknown state. Probably a bug.

     !	      Missing file during uninstall. Darwinup expected a file or
	      directory to exist, but it did not. This could be a bug in dar‐
	      winup, but most likely another tool or software update removed a
	      file that darwinup had been tracking. It can also be caused by
	      an installation failing due to an object changing type (see
	      FORCING OPERATIONS below), and the subsequent rollback finding
	      the root only partially installed. Since these all happen during
	      uninstall, they are typically safe to ignore, since darwinup was
	      going to delete the object anyway.

     A	      Added. No previous file or directory existed so the file or
	      directory was added to your system.

     E	      External change. The file you are installing is different than
	      the last file you installed, but it is identical to what was
	      actually found on disk. This probably means something manually
	      installed a root or software update without darwinup knowing
	      about it. This is usually harmless.

     M	      Mode change. Only changes to permission or ownership were needed
	      to uninstall the file or directory.

     R	      Removed. No previous file or directory existed, so the uninstall
	      process removed the file.

     U	      Updated. During installation, the file or directory replaces an
	      existing object at the same path. During uninstallation, the
	      previous version of the file was restored.

SUPPORTED PATHS
     /path/to/file-or-directory
	      You can install archive files or directories by specifying a
	      relative or absolute path. If the path is a directory, all files
	      below it will be installed as a single root. If the path points
	      to a file, it must be one of the suported archive file types as
	      described in the usage statement.

     user@host:/path/to/file-or-directory
	      You can install files or directories from another host via
	      rsync/ssh.  The files/directories will be downloaded to your
	      machine and then installed like any other root.

     http[s]://host/path/to/file
	      You can install files from an archive hosted on an HTTP/HTTPS
	      server. The archive file will be downloaded using curl to your
	      machine and then installed like any other archive file. You can
	      not point darwinup at a directory hosted via HTTP or HTTPS, only
	      archive files such as tarballs.

ARCHIVE SPECIFICATIONS
     When running a subcommand which takes an archive argument, you can use
     one or more of the following items to specify which archive to operate
     on. You can mix and match any of them as needed.  You can use the list
     subcommand with these specifications to see what will match.

     serial   You can specify an archive with its serial number, which can be
	      found using the list subcommand.

     uuid     You can specify an archive with its UUID, which can be found
	      using the list subcommand.

     name     You can specify an archive with its name, which can be found
	      using the list subcommand.

     newest   The newest keyword will match the one archive which was most
	      recently installed. This should always be the first archive
	      listed.

     oldest   The oldest keyword will match the one archive which was
	      installed the longest time ago. This should always be the last
	      archive listed.

     superseded
	      The superseded keyword will match zero or more archives. An ar‐
	      chive is superseded if every file it contains is contained in an
	      archive that was (and still is) installed after it. A file in an
	      archive can also be superseded by external changes, such as
	      operating system updates. When uninstalling a superseded ar‐
	      chive, you should never see any status symbols, since being
	      superseded means there is a newer file on disk.

     all      The all keyword will match all archives. If you specify extra
	      verbosity with -vv, then rollback archives will also be matched
	      by the all keyword. This means that darwinup -vv uninstall all
	      will attempt to uninstall rollback archives, which will print a
	      message about not being able to uninstall rollback archives.
	      This is normal and not a problem.

FORCING OPERATIONS
     There are 2 cases where darwinup will require you to pass the force (-f)
     option before proceeding with an operation.

     Object Type Change
	      If you install an archive which contains a file with the same
	      path as a directory on your system, or vice versa, darwinup will
	      give you a error about not doing that unless you really want to
	      force it. If you do force the operation, darwinup will delete
	      the existing object and replace it with the object from the
	      root. This can happen when a directory full of files gets pack‐
	      aged up in some opaque file, like xibs/nibs. If you expect this
	      "type change", then it is probably safe to force the operation.

     Uninstall a root from an older base system
	      Darwinup remembers the version (build) of the operating system
	      when a root is installed. The reason for this is darwinup saves
	      the old (replaced) files during the installation procedure.
	      Those backups may have come from the older operating system, and
	      thus are not necessarily compatible with the current build of
	      the operating system. So if you try to uninstall an archive that
	      had been installed on a different version of the operating sys‐
	      tem, darwinup will stop and provide a message asking you to
	      force the operation if you really want to. If the files you are
	      uninstalling are all superseded, then you should not get this
	      error as the backup copies will not be used anyway.

HELPFUL AUTOMATION
     Darwinup tries to detect common situations and run external tools that
     you would otherwise have to remember to run yourself. The "dry run" (-n)
     and "disable automation" (-d) options prevent any of the following from
     happening.

     Dyld Cache
	      If a root modifies any file, then darwinup will run
	      update_dyld_shared_cache unless the -d option is specified.

     Kernel Extensions
	      If a root modifies a file under /System/Library/Extensions, then
	      darwinup will update the mtime of /System/Library/Extensions to
	      ensure that the kext cache is updated during the next boot.

EXAMPLES
     Install files from a tarball
	      $ darwinup install library-1.2.3.tar.gz

     Install several directories from /tmp/
	      $ darwinup install /tmp/*/*~dst/

     Uninstall everything
	      $ darwinup uninstall all

     See what archives have been superseded and then uninstall them
	      $ darwinup list superseded $ darwinup uninstall superseded

     Uninstall several archives by serial, the oldest one, and one named
	      myroot
	      $ darwinup uninstall 9 16 myroot oldest

     Install a root from src.macosforge.org
	      $ darwinup install http://src.macos‐
	      forge.org/Roots/10D573/zlib.root.tar.gz

SEE ALSO
     rsync(1), curl(1), tar(1), gzip(1), ditto(1), update_dyld_shared_cache(1)

Darwin				 16 Apr, 2010				Darwin
[top]

List of man pages available for MacOSX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net