1.\" $NetBSD: gzexe.1,v 1.3 2003/12/28 12:49:41 wiz Exp $ 2.\" $OpenBSD: gzexe.1,v 1.1 2003/07/31 07:32:47 otto Exp $ 3.\" 4.\" Copyright (c) 2003 Otto Moerbeek <otto@drijf.net> 5.\" 6.\" Permission to use, copy, modify, and distribute this software for any 7.\" purpose with or without fee is hereby granted, provided that the above 8.\" copyright notice and this permission notice appear in all copies. 9.\" 10.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 11.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 12.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 13.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 14.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 15.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 16.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 17.\" 18.\" $FreeBSD$ 19.Dd January 26, 2007 20.Dt GZEXE 1 21.Os 22.Sh NAME 23.Nm gzexe 24.Nd create auto-decompressing executables 25.Sh SYNOPSIS 26.Nm gzexe 27.Op Fl d 28.Ar 29.Sh DESCRIPTION 30The 31.Nm 32utility uses 33.Xr gzip 1 34to compress executables, producing executables that decompress on-the-fly 35when executed. 36This saves disk space, at the cost of slower execution times. 37The original executables are saved by copying each of them to a file with 38the same name with a 39.Sq ~ 40suffix appended. 41After verifying that the compressed executables work as expected, the backup 42files can be removed. 43.Pp 44The options are as follows: 45.Bl -tag -width Ds 46.It Fl d 47Decompress executables previously compressed by 48.Nm . 49.El 50.Pp 51The 52.Nm 53program refuses to compress non-regular or non-executable files, 54files with a setuid or setgid bit set, files that are already 55compressed using 56.Nm 57or programs it needs to perform on-the-fly decompression: 58.Xr sh 1 , 59.Xr mktemp 1 , 60.Xr rm 1 , 61.Xr echo 1 , 62.Xr tail 1 , 63.Xr gzip 1 , 64and 65.Xr chmod 1 . 66.Sh SEE ALSO 67.Xr gzip 1 68.Sh CAVEATS 69The 70.Nm 71utility replaces files by overwriting them with the generated 72compressed executable. 73To be able to do this, it is required that the original files are writable. 74