e/0002755000000000000000000000000011641260061006167 5ustar e/COPYING0000644000000000000000000004310510377033672007236 0ustar GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. e/examples/0002755000000000000000000000000011641260061010005 5ustar e/examples/webserver.ctl0000644000000000000000000000040610371057133012516 0ustar Section: web Package: webserver-dummy Provides: httpd Description: Webserver dummy package This package provides dpkg with the information that there is a local webserver installed. . Installing dwww, man2html etc. won't bug you to install apache any more e/examples/so5.ctl0000644000000000000000000000045510371057133011224 0ustar Section: non-free/editors Package: so5-dummy Depends: libc6, xlib6g Description: Star Office 5 dummy package This package will ensure the libraries used by Star Office are installed. . Download site for Star Office 5 Personal Edition is http://www.stardivision.com/office/so5linux_license.html e/examples/mail-transport-agent.ctl0000644000000000000000000000031310371057133014557 0ustar Package: mta-local Provides: mail-transport-agent Conflicts: mail-transport-agent Description: A local MTA package A package, which can be used to establish a locally installed mail transport agent. e/examples/wp8.ctl0000644000000000000000000000045310371057133011232 0ustar Section: non-free/editors Package: wp8-dummy Depends: xlib6, xpm4.7, libc5 Description: Word Perfect dummy package This package will ensure the libraries used by Word Perfect are installed. . You can download the Linux version of Word Perfect 8 from http://linux.corel.com/linux8/download.htm e/examples/communicator45-full.ctl0000644000000000000000000000076710371057133014335 0ustar Section: non-free/web Package: communicator45-full-static-dummy Depends: communicator-base-45, netscape-base-45, netscape-base-4, netscape-base-45, netscape-java-45, netscape-java-45, communicator-smotif-45 Recommends: communicator-spellchk-45, communicator-nethelp-45 Description: Communicator 4.5 full install (smotif) This is an installation of Communicator 4.5 full blown, that is with all modules, just as if it came as a tarball . You don't have to select the spellchecker and nethelp though. e/usr/0002755000000000000000000000000011641260061007000 5ustar e/usr/share/0002755000000000000000000000000011641260061010102 5ustar e/usr/share/equivs/0002755000000000000000000000000011641260061011416 5ustar e/usr/share/equivs/template.ctl0000644000000000000000000000230511641255267013747 0ustar ### Commented entries have reasonable defaults. ### Uncomment to edit them. # Source: Section: misc Priority: optional # Homepage: Standards-Version: 3.9.2 Package: # Version: # Maintainer: Your Name # Pre-Depends: # Depends: # Recommends: # Suggests: # Provides: # Replaces: # Architecture: all # Copyright: # Changelog: # Readme: # Extra-Files: # Files: # Description: long description and info . second paragraph e/usr/share/equivs/template/0002755000000000000000000000000011641260061013231 5ustar e/usr/share/equivs/template/debian/0002755000000000000000000000000011641260061014453 5ustar e/usr/share/equivs/template/debian/README.Debian.in0000644000000000000000000000136710400313111017111 0ustar @packagename@ for Debian This is a dummy package that makes Debian's package management system believe that equivalents to packages on which other packages do depend on are actually installed. The special dependencies used in this package are: @depends@ Please note that this is a crude hack and if thoughtlessly used might possibly do damage to your packaging system. And please note as well that using it is not the recommended way of dealing with broken dependencies. Better file a bug report instead. Deinstallation of this package is only possible when all pending dependency issues are properly resolved in some other way. A more brutal approach for it's deinstallation is to create and install the package configured using an empty control file. e/usr/share/equivs/template/debian/copyright0000644000000000000000000000165010400315314016400 0ustar Copyright 1997 by Paul Seelig Copyright 1999 by Martin Bialasinski The files in this package are free software; you can redistribute them and/or modify them under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. The files in this package are distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License with your Debian GNU/Linux system, in /usr/share/common-licenses/GPL, or with the Debian GNU/Linux bash source package as the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. e/usr/share/equivs/template/debian/rules0000755000000000000000000000101311641247525015536 0ustar #!/usr/bin/make -f # Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess. #export DH_VERBOSE=1 build build-arch build-indep: clean: dh_testdir dh_clean install: build dh_testdir dh_testroot dh_prep binary-arch: install binary-indep: install dh_testdir dh_testroot dh_install dh_installdocs dh_installchangelogs dh_compress dh_fixperms dh_installdeb dh_gencontrol dh_md5sums dh_builddeb binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary install e/usr/share/equivs/template/debian/compat0000644000000000000000000000000211641247525015661 0ustar 7 e/usr/share/equivs/template/debian/control.in0000644000000000000000000000141411641251306016463 0ustar Section: misc Priority: optional Build-Depends: debhelper (>= 7) Maintainer: root Standards-Version: 3.9.2 Package: equivs-dummy Architecture: all Description: Dummy package to fulfill package dependencies This is a dummy package that makes Debian's package management system believe that equivalents to packages on which other packages depend on are actually installed. Deinstallation of this package is only possible when all pending dependency issues are properly resolved in some other way. . Please note that this is a crude hack and if thoughtlessly used might possibly do damage to your packaging system. And please note as well that using it is not the recommended way of dealing with broken dependencies. It is better to file a bug report. e/usr/share/equivs/template/debian/source/0002755000000000000000000000000011641260061015753 5ustar e/usr/share/equivs/template/debian/source/format0000644000000000000000000000000411641252307017162 0ustar 1.0 e/usr/bin/0002755000000000000000000000000011641260061007550 5ustar e/usr/bin/equivs-build0000755000000000000000000002206711641260040012111 0ustar #!/usr/bin/perl # Copyright 1999 by Martin Bialasinski # Copyright 2006 by Peter Samuelson # This programm is subject to the GNU General Public License Version 2 # doc-base Copyright (C) 1997,1998 Christian Schwarz, # Also licensed under the GPL2 use strict; use warnings; use Cwd; use Getopt::Long qw( :config no_ignore_case bundling ); use File::Copy; use File::Basename; use File::Temp ('tempdir'); my $builddir = tempdir('equivs.XXXXXX', DIR => cwd, CLEANUP => 1) or die "Cannot create temporary build dir: $!\n"; my %control; sub usage { print STDERR < \$full_package, 'arch|a=s' => \$arch) or usage(); my $debug = 0; umask(022); my $controlfile = $ARGV[0]; if (! $controlfile) { print STDERR "No control file was specified\n"; usage(); } system("cp -R /usr/share/equivs/template/* $builddir") == 0 or die "Error on copy of the template files: exit status " . ($?>>8) . "\n"; # Parse the equivs control file read_control_file($builddir, \%control, $arch, $controlfile); if ($debug) { my ($k, $v); while (($k, $v) = each %control ) { print "$k -> $v\n"; } } # Copy any additional files my @extra_files = split ",", $control{'Extra-Files'} || ""; my %install_files = (); for (split "\n", $control{'Files'} || "") { die "Cannot parse Files line: '$_'\n" unless m:^\s*(\S+)\s+(\S+)/?\s*$:; $install_files{"$2/$1"} = $1; } my %create_files = (); for (@{$control{'File'} || []}) { if (m/^\s*(\S+)(?:\s+(\d+))?\s*\n(.*)$/s) { my ($f,$m,$b) = ($1,$2,$3); $m = (oct $m||0) || 0644; $b =~ s/^ //mg; $b =~ s/^[.]([.]*)$/$1/mg; $create_files{$f} = [$b,$m]; } } mkdir "$builddir/install", 0755; open INSTALL, '>', "$builddir/debian/install" or die "Cannot open $builddir/debian/install for writing: $!\n"; foreach my $target (keys %install_files, keys %create_files) { $target =~ s/ +//g; my $dest; my $cnt = 0; if ($target =~ m/^(preinst|postinst|prerm|postrm)$/) { $dest = "debian/$target"; } else { do { $dest = "install/$cnt"; mkdir "$builddir/$dest" unless -d "$builddir/$dest"; $dest .= "/" . basename($target); $cnt++; } while ( -e "$builddir/$dest" ); print INSTALL "$dest " . dirname($target) . "\n"; } $dest = "$builddir/$dest"; if (defined $install_files{$target}) { my $file = $install_files{$target}; copy $file, $dest or die "Cannot copy $file to $dest: $!\n"; chmod -x $file ? 0755 : 0644, $dest or die "Cannod chmod $dest: $!\n"; } else { my ($content, $mode) = @{$create_files{$target}}; open CREATE, '>', $dest or die "Cannot create file $dest: $!\n"; print CREATE "$content\n"; close CREATE; chmod $mode, $dest or die "Cannot chmod $dest: $!\n"; } } close INSTALL; mkdir "$builddir/docs", 0755; open DOCS, '>', "$builddir/debian/docs" or die "Cannot open $builddir/debian/docs for writing: $!\n"; foreach my $file (@extra_files){ $file =~ s/ +//g; my $dest = 'docs/' . basename($file); copy $file, "$builddir/$dest" or die "Cannot copy $file to $builddir/$dest: $!\n"; print DOCS "$dest\n"; } close DOCS; foreach my $script (qw(Preinst Postinst Prerm Postrm)) { next unless defined $control{$script}; my $dest = 'debian/' . lc($script); copy $control{$script}, "$builddir/$dest" or die "Cannot copy $script to $builddir/$dest: $!\n"; } write_control_file($builddir, \%control); if ($control{'Changelog'}) { copy $control{'Changelog'}, "$builddir/debian/changelog" or die "Cannot copy changelog file $control{'Changelog'}: $!\n"; } else { make_changelog($builddir, \%control); } if ($control{'Readme'}) { copy $control{'Readme'}, "$builddir/debian/README.Debian.in" or die "Cannot copy README file $control{'Readme'}: $!\n"; } # Make substitutions in the Readme make_readme($builddir, \%control); # Copy a copyright file, otherwise use GPL2 if ($control{'Copyright'}) { copy $control{'Copyright'}, "$builddir/debian/copyright" or die "Cannot copy copyright file $control{'Copyright'}: $!\n"; } chdir $builddir; unlink glob "debian/*.in"; my @build_cmd; if ($full_package) { @build_cmd = (qw(dpkg-buildpackage -rfakeroot), ($arch ? "-a$arch" : ())); } else { @build_cmd = (($arch ? ("dpkg-architecture", "-a$arch", "-c") : ()), qw(fakeroot debian/rules binary)); } system @build_cmd; my $err = $? >> 8; chdir '..'; die "Error in the build process: exit status $err\n" if $err; print "\nThe package has been created.\n"; print "Attention, the package has been created in the current directory,\n"; print "not in \"..\" as indicated by the message above!\n"; exit 0; sub read_control_file { my ($builddir, $control, $specific_arch, $file) = @_; my @control = (); my $in; open($in, "$builddir/debian/control.in") or die "Cannot open control file: $!\n"; read_control_file_section($in, \@control) or die "error: empty control file\n"; close $in; # Set some field defaults: Maintainer, Architecture my $fullname = $ENV{DEBFULLNAME}; ($fullname) = split ',', (getpwuid $>)[6] unless defined $fullname; my ($username, $systemname); for (qw(DEBEMAIL EMAIL)) { ($username, $systemname) = split '@', $ENV{$_} if !$username and defined $ENV{$_}; } $username ||= $ENV{USER} || $ENV{LOGNAME} || (getpwuid $>)[0]; chomp($systemname ||= qx(cat /etc/mailname 2>&- || hostname --fqdn)); %{$control} = @control; $control->{'Maintainer'} = "$fullname <$username\@$systemname>"; $control->{'Architecture'} = $specific_arch ? 'any' : 'all'; open($in, $file) or die "Cannot open control file $file: $!\n"; @control = (); read_control_file_section($in, \@control) or die "error: empty control file\n"; close $in; for (my $i = 0; $i < $#control; $i += 2) { my $k = $control[$i]; my $v = $control[$i+1]; if ($k eq "File") { my $vv = []; $vv = $control->{$k} if defined $control->{$k}; push @{$vv}, $v; $control->{$k} = $vv; } else { $control->{$k} = $v; } } # If no Source entry was specified, copy Package: $control->{'Source'} ||= $control->{'Package'}; # remove trailing whitespace # foreach my $key (keys %$control) { # $control->{$key} =~ s/\s$//; # } } sub read_control_file_section { my ($fh, $pfields) = @_; my ($cf,$v); while (<$fh>) { chomp; next if (m/^\s*$/ or m/^#/); # new field? if (/^(\S+)\s*:\s*(.*?)\s*$/) { ($cf,$v) = (ucfirst lc $1, $2); $cf =~ s/(?<=-)([a-z])/uc $1/eg; push @{$pfields}, $cf, $v; } elsif (/^(\s+\S.*)$/) { $v = $1; defined($cf) or die "syntax error in control file: no field specified\n"; $pfields->[-1] .= "\n$v"; } else { die "syntax error in control file: $_\n"; } } return 1; } # Write control fields sub control_fields { my $retval; my ($control, @fields) = @_; foreach my $str (@fields) { my $t = $control->{$str}; if ($t) { $retval .= "$str: $t\n"; } } return $retval; } sub write_control_file { my ($builddir, $control) = @_; open OUT, '>', "$builddir/debian/control" or die "Cannot open $builddir/debian/control for writing: $!\n"; print OUT control_fields($control, "Source", "Section", "Priority", "Maintainer", "Homepage", "Build-Depends", "Standards-Version"); print OUT "\n"; print OUT control_fields($control, "Package", "Architecture", "Pre-Depends", "Depends", "Recommends", "Suggests", "Conflicts", "Breaks", "Provides", "Replaces", "Description"); close OUT; } sub make_changelog { my ($builddir, $control) = @_; my ($version, $suite, $date); $version = $control->{'Version'} || "1.0"; $suite = $control->{'Suite'} || "unstable"; chomp ($date = qx(date -R)); open OUT, '>', "$builddir/debian/changelog" or die "Couldn't write changelog: $!\n"; print OUT <{Source} ($version) $suite; urgency=low * First version -- $control->{'Maintainer'} $date EOINPUT close OUT; } # Create the README.Debian file sub make_readme { my ($builddir, $control) = @_; my ($content, $deps); open IN, "$builddir/debian/README.Debian.in" or die "Cannot open the README file: $!\n"; $content = join '', ; close IN; $content =~ s/\@packagename\@/$control->{'Package'}/g; $deps = control_fields($control, "Pre-Depends", "Depends", "Recommends", "Suggests", "Conflicts", "Breaks", "Provides", "Replaces"); $deps ||= " "; $content =~ s/\@depends\@/$deps/g; open OUT, '>', "$builddir/debian/README.Debian" or die "Cannot open $builddir/debian/README.Debian for writing: $!\n"; print OUT $content; close OUT; } e/usr/bin/equivs-control0000755000000000000000000000052210371057133012470 0ustar #!/bin/bash if [ $# -eq 0 ] then echo Usage: $0 filename echo filename is the name of the equivs control file to create exit 1 fi case $1 in -*) echo Usage: $0 filename echo filename is the name of the equivs control file to create exit 1 ;; esac cp /usr/share/equivs/template.ctl $1 e/debian/0002755000000000000000000000000011641260061007411 5ustar e/debian/copyright0000644000000000000000000000105110377034415011346 0ustar Copyright 1997, 1998 by Christian Schwarz Copyright 1997 by Paul Seelig Copyright 1999 by Martin Bialasinski Copyright 2003 by Fabio Rafael da Rosa This package is free software; you can redistribute and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. On Debian systems, the full text of the license can be found at /usr/share/common-licenses/GPL-2 . e/debian/README.Debian0000644000000000000000000000572110371057133011460 0ustar equivs for DEBIAN ----------------- This is a package that creates Debian packages which can be used to inform dpkg about locally installed packages and their dependencies. Also empty packages which just require other packages can be created with equivs. These can be used as "profile" packages which just mark other ones for installation. Please note that this is a crude hack and if thoughtlessly used, it might possibly do damage to your packaging system. And please note as well that using it is not the recommended way of dealing with broken dependencies. Better file a bug report instead. In contrast to prior versions of equivs, this version does not recreate the equivs package, but creates new dummy packages. History of the package: (by Paul Seelig) ----------------------- I once made this package based on my preference to run my own installation of teTeX in "/usr/local/" because i didn't want to depend on any package maintainer's update frequency. On the other hand i still wanted to take advantage of other TeX/LaTeX packages which depend upon the Debian teTeX packages. While Debian's teTeX maintainer does an incredibly fine job i wanted to be able to take advantage of Thomas Esser's update shell scripts as soon as they come out. In this very special case the needed "Provides:" field of the 'equivs' control file had to contain the entries "tetex-base, tetex-bin, tetex-dev, tetex-doc, tetex-extra". The idea for this package is BTW based upon an article in the teTeX mailing list by Markus Dickebohm on 10 Dec 1996 21:40:50 +0100 with the subject "Re: [TETEX 1551] teTeX for Debian Linux?". Thanks a lot, Markus! :-) How to use this package: ------------------------ When you call the "equivs-build" program, it will create a subdirectory "equivs", containing the files necessary to create a Debian package and build that package. You need a control file for make-equivs. You will find examples of control files in /usr/share/doc/equivs/examples. The control file has a structure like the control files in "real" Debian packages, but it doesn't have to define all keys, as default values will be used if you omit one. See the manual page for "equivs-build" for more information. Check the Debian Policy Manual, Chapter 2, if you are unsure about the different level of package relationships (dependencies) http://www.debian.org/doc/debian-policy/ch-archive.html (also available in the debian-policy package). The program "equivs-control" will create a dummy control file, which you have to alter before it will be useful. So to use equivs, you do: a. cd /tmp b.1. equivs-control ns-control or b.2. cp /usr/share/doc/equivs/examples/ ns-control c. edit ns-control d. equivs-build ns-control e. su - f. dpkg -i /tmp/ns-dummy_1.0_all.deb Deinstallation of this package is only possible when all pending dependencies are properly resolved in some other way. Martin Bialasinski , Fri, 7 Jul 2000 17:56:32 +0200 e/debian/changelog0000644000000000000000000003166511641260047011300 0ustar equivs (2.0.9) unstable; urgency=low * Upgrade to Policy 3.9.2 - no changes. * Upgrade to source format 1.0 - no changes. * Support Breaks. (Closes: #571638) * Move up to debhelper 7. (Closes: #624175) * Fix 'Files:' option to expect an install _directory_. (Closes: #636310) * Let 'Source:' field default to package name but be overridable. Based on patch from era erickson. (Closes: #409557) * Improve option handling: allow equivs-build --arch and --full to work together. Previously, with --full, --arch had no effect. -- Peter Samuelson Fri, 30 Sep 2011 01:22:27 -0500 equivs (2.0.8) unstable; urgency=low * Acknowledge NMU, thanks Zack. * Also thanks Tomáš Pospíšek for several patches. * Use dpkg-buildpackage instead of debuild; drop devscripts dependency. (Closes: #475936) * Stop specifying debhelper >=4, redundant in this day and age. At the same time, I don't see the point in specifying a higher compat level. * Update and improve package description somewhat. (Closes: #464871) * Document including multiple files via the "Files:" field: manpage (Closes: #565897), template file (Closes: #464888). * Allow +x bit to be specified on File: line. (Closes: #535622) * Preserve +x bit for files in Files: section. (Closes: #535623) * Allow Homepage field. (Closes: #502395) * Fix Makefile pod2man rule. (Closes: #364620) * Bump Standards-Version to 3.8.3 (no changes). * Honor $DEBEMAIL, $EMAIL, $DEBFULLNAME, and /etc/mailname for the default maintainer address. -- Peter Samuelson Tue, 19 Jan 2010 22:28:13 -0600 equivs (2.0.7-0.1) unstable; urgency=low * Non-maintainer upload. * equivs-build: add support for adding arbitrary extra files to a package. Thanks to Anthony Towns for the patch (Closes: #449542) * equivs-build: use date -R instead of deprecated 822-date. Thanks to Guillem Jover. (Closes: #415797) * equivs-build.pod: document the new "Files:" and "File:" fields * debian/control: bump Standards-Version to 3.7.3, no changes needed * debian/control: move debhelper dependency to Build-Depends, so that it is available upon clean -- Stefano Zacchiroli Tue, 22 Jan 2008 12:26:38 +0100 equivs (2.0.7) unstable; urgency=low * New maintainer. (Closes: #350835) * Acknowledge NMU. (Closes: #201852, #218443, #237963, #251547) * Add file COPYING, the GNU GPL v2, to top level of source tree. * Update both build-time and runtime use of debhelper to v4. (Closes: #320619) * debian/copyright, debian/rules: cleanups * debian/control: - standards version 3.6.2 (no changes needed) - rewrite description - drop 'perl5' alternative dependency; the perl5 package disappeared about 3 release cycles ago * template/debian/copyright: update FSF address. * template/debian/control.in: edit description, set maintainer to root@localhost, update standards version, add correct debhelper Build-Depends * template/debian/rules: streamline somewhat. * equivs-build: support Replaces: field. (Closes: #118526) * equivs-build, template/debian/README.Debian.in: use "@" instead of the ISO-8859-1 section symbol for the variable escapes, to make life slightly easier for users of other charsets. - equivs-build.pod: update (and fix) the documentation for this * equivs-build: allow comments in control file. - template.ctl: comment out most of the entries, to save the user some time in common cases. Also mention that packages lists are all comma-separated. * equivs-build: Lots of code cleanups. Highlights: - Use File::Temp::tempdir. This removes the dir upon normal exit. On abend, tell the user where it is so she can examine and remove it. - Print usage message to STDERR, not STDOUT - Actually bother to close all the files we open - die with "\n". I doubt users care about source code line numbers. - 3-arg open(), multi-arg system(), and in general try to look less like Perl 4 - Delete outdated or useless comments, commented-out code, unneeded variables, and redundant integrity checks - Eliminate most use of global variables The net effect is to shrink the file by about 20%. -- Peter Samuelson Tue, 28 Feb 2006 02:01:16 -0600 equivs (2.0.6-0.1) unstable; urgency=low * Non-maintainer upload. * equivs-build: fix operator precedence problem. Applied patch from Mattia Dongili. Closes: #237963, 218443. * debian/control: Tweaked the description message, removing the misleading phrase "dummy package". Closes: #201852. -- Steve M. Robbins Fri, 28 May 2004 21:38:59 -0400 equivs (2.0.6) unstable; urgency=low * Just to correct some changelog issues * Wrong bug closed in 2.0.5 (#131270). The bug was #131260 (manually closed by me) * era eriksson correct mail is era@iki.fi * Fixed Control file to Standars-Version 3.5.10 -- Fabio Rafael da Rosa Wed, 11 Jun 2003 11:32:56 -0300 equivs (2.0.5) unstable; urgency=low * New maintainer. (Closes: #192678) * Uptated to Standards-Version 3.5.10 * Changed some docs to be more clear (patch from eriksson ) (Closes: #163780, #131270) * Changed Maintainer sample line in equivs-control to make it clear. (Closes: #122041) -- Fabio Rafael da Rosa Thu, 15 May 2003 16:58:59 -0300 equivs (2.0.4) unstable; urgency=low * Added Preinst, Postinst, Prerm and Postrm entries to the control file for usage with maintainerscripts. Closes: #101198 -- Martin Bialasinski Fri, 29 Jun 2001 22:04:01 +0200 equivs (2.0.3) unstable; urgency=low * provide a --arch switch for "cross-compiling" using dpkg-architecture closes: #87791 -- Martin Bialasinski Tue, 13 Mar 2001 22:32:44 +0100 equivs (2.0.2) unstable; urgency=low * Add build-depends. Closes: #70284 -- Martin Bialasinski Thu, 21 Dec 2000 14:35:39 +0100 equivs (2.0.1) unstable; urgency=low * Make equivs-control print usage information, on any option. closes: #78799 -- Martin Bialasinski Wed, 6 Dec 2000 23:49:14 +0100 equivs (2.0) unstable; urgency=low * No more TODO, remove file * Make full FHS complient (change docs etc.) * Move files from /usr/lib/equivs to /usr/share/equivs * Fix documentation, closes: #66771 * Call it version 2.0 -- Martin Bialasinski Fri, 7 Jul 2000 17:57:57 +0200 equivs (1.999.12) unstable; urgency=low * Fixed some perl -w warnings -- Martin Bialasinski Sun, 31 Oct 1999 02:48:59 +0100 equivs (1.999.11) unstable; urgency=low * Standards Version 3.0.1 also in the equivs-control template -- Martin Bialasinski Thu, 23 Sep 1999 22:11:20 +0200 equivs (1.999.10) unstable; urgency=low * Made FHS complient. * Changed license location in copyright file * Standard 3.0.1 in the template -- Martin Bialasinski Thu, 16 Sep 1999 17:28:39 +0200 equivs (1.999.9) unstable; urgency=low * Depende on perl|perl5, so that the package can still be used with slink -- Martin Bialasinski Thu, 29 Jul 1999 23:42:19 +0200 equivs (1.999.8) unstable; urgency=low * Added dependency on perl (lintian) * corrected spelling (lintian) -- Martin Bialasinski Wed, 7 Jul 1999 03:47:20 +0200 equivs (1.999.7) unstable; urgency=low * Added a Extra-Files: field to the control file where one can add files to be put into /usr/doc/packagename * Added the --full option, that makes a full build using debuild, suitable for upload to the distribution -- Martin Bialasinski Thu, 24 Jun 1999 21:37:57 +0200 equivs (1.999.6) unstable; urgency=low * Added the Readme, Copyright and Changelog fields, so one can use own files * Renamed make-control to equivs-control and make-equivs to equivs-build Makes it easier for tab completition. I had to look up the names after some time not working on equivs, so the scripts were obviously named wrong. * Added version header in template control file (Closes #39959) * Added manpages (Closes #38148) -- Martin Bialasinski Tue, 22 Jun 1999 23:11:10 +0200 equivs (1.999.5) unstable; urgency=low * Fixed typos in the examples. Closing #36354 Thanks to "Carl R. Witty" -- Martin Bialasinski Tue, 20 Apr 1999 18:23:16 +0200 equivs (1.999.4) unstable; urgency=low * Examples for Staroffice and Word Perfect were foobar -- Martin Bialasinski Sun, 18 Apr 1999 15:24:35 +0200 equivs (1.999.3) unstable; urgency=low * Make the config parse routine chop trailing whitespace * Removed call of dh_link from template rules file, as it is not necessary. Fixes #31670 * Fixed spelling error in description * Added a small check, if the equivs directory is not a symlink before removing it * Changed Depends: fakeroot to Depends: libtricks | fakeroot, until a new version of libtricks is released, which provides fakeroot (#31682) * Added an example config for a locally installed MTA -- Martin Bialasinski Wed, 6 Jan 1999 21:13:37 +0100 equivs (1.999.2) unstable; urgency=low * Forgot about the "Provides:" dependency * Added a umask call, as somehow the README.Debian file was not copied correctly * Fixes wishlist bug #27215 -- Martin Bialasinski Wed, 6 Jan 1999 13:24:59 +0100 equivs (1.999.1) unstable; urgency=low * New Maintainer * Complete rewrite. Instead recreating the equivs package, one now creates new fake packages * No problem with apt anymore. To apt, the information fetched from it's sources has precedence over information hold localy by dpkg. So a recompiled equivs packages was not recognised correctly. * Changed versionnumber to a debian-only one. -- Martin Bialasinski Mon, 4 Jan 1999 12:35:16 +0100 equivs (1.0.5-3) unstable; urgency=low * Upgraded to standards version 2.4.0.0 (no changes). * Minor changes to tar routine in debian/rules to make it more reliably. * Closing Bug#18921 which was already addressed in former releases. -- Paul Seelig Sun, 22 Feb 1998 07:49:23 +0100 equivs (1.0.5-2) unstable; urgency=low * Added correct FSF postal address into debian/copyright as suggested by lintian check. -- Paul Seelig Sun, 22 Feb 1998 07:49:23 +0100 equivs (1.0.5-1) unstable; urgency=low * Complete overhaul (and hopefully simplification) of "equivs". * Updated README.debian with a clearer description of the package's usage and instructions on how to remove it again. I hope "equivs" is pretty foolproof by now. * Changed debian/rules and the preinst/postinst files to use the configuration file "/etc/equivs.conf". * Added debian/purge file. -- Paul Seelig Sat, 07 Feb 1998 16:34:32 +0100 equivs (1.0.4-2) unstable; urgency=low * Changed "Architecture: any" to "Architecture: all" in control file since there is no compiled binary included. This closes bug #16878. * Minor changes to debian/rules. -- Paul Seelig Fri, 16 Jan 1998 15:04:03 +0100 equivs (1.0.4-1) unstable; urgency=low * Made equivs install it's own source into /usr/src/ * Put equivs into section admin with priority optional * Added warnings about possible damage of package dependencies if mindlessly used. -- Paul Seelig Thu, 04 Dec 1997 05:04:03 +0100 equivs (1.0.3-2) unstable; urgency=low * Added a small description of the build procedure to the README.debian file upon proposal of . * Added credit to Markus Dickebohm for the information which enabled me to make up this package. ;-) * Various changes to debian/rules so that the current configuration is added to the documentation as "/usr/doc/equivs/current.conf". -- Paul Seelig Mon, 29 Sep 1997 22:24:03 +0100 equivs (1.0.3-1) unstable; urgency=low * Changed freeware license to GPL. -- Paul Seelig Thu, 26 Mar 1997 14:40:03 +0100 equivs (1.0.2-1) unstable; urgency=low * Removed silly copy actions from 'debian/rules'. -- Paul Seelig Wed, 25 Mar 1997 13:46:03 +0100 equivs (1.0.1-1) unstable; urgency=low * Included a sed command for automatically configuring the control file. The user now simply has to edit debian/equivs.conf for changing the package. -- Paul Seelig Sun, 22 Jun 1997 23:36:34 +0100 equivs (1.0) unstable; urgency=low * Initial Release. -- Paul Seelig Wed, 12 Mar 1997 10:46:03 +0100 e/debian/equivs.manpages0000644000000000000000000000005610377034415012450 0ustar debian/equivs-build.1 debian/equivs-control.1 e/debian/rules0000755000000000000000000000177411641247525010512 0ustar #!/usr/bin/make -f # Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess. # This version is for packages that are architecture independent. #export DH_VERBOSE=1 PKG := equivs MANPAGES := debian/equivs-control.1 debian/equivs-build.1 %.1: %.pod pod2man --section=1 --release="$$(date +'%d %b %Y')" \ --center="Debian/GNU" --date=' ' $< > $@ build-arch: build-indep: $(MANPAGES) build: build-arch build-indep clean: dh_testdir $(RM) $(MANPAGES) dh_clean install: build dh_testdir dh_testroot dh_prep mkdir -p debian/$(PKG) cp -la usr debian/$(PKG) # Build architecture-dependent packages - nothing to do here binary-arch: build install # Build architecture-independent files here. binary-indep: build install dh_testdir dh_testroot dh_installdocs dh_installexamples dh_installman dh_installchangelogs dh_link dh_compress dh_fixperms dh_installdeb dh_gencontrol dh_md5sums dh_builddeb binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary e/debian/equivs-build.pod0000644000000000000000000000663111325476322012542 0ustar =head1 NAME equivs-build - make a Debian package to register local software =head1 SYNOPSIS B =head1 DESCRIPTION B is a program that creates Debian packages which can be used to inform dpkg about locally installed packages and their dependencies. Also empty packages that just require other packages can be created with equivs. These can be used as "profile" packages which just mark other ones for installation. Please note that this is a crude hack and if thoughtlessly used, it might possibly do damage to your packaging system. And please note as well that using it is not the recommended way of dealing with broken dependencies. Better file a bug report instead. The control file has a structure like the control files in "real" Debian packages, but it doesn't have to define all keys, as default values will be used if you omit one. There are several additional fields that can be used: =over 4 =item Changelog: File to be used as the changelog =item Version: If you don't use a local changelog, equivs will create a dummy one. As the version of the package is defined in the changelog, equivs will assume the version 1.0. With this field, you can set an explicit version. =item Readme: A file to be used as the F file. You can use the strings B<@packagename@> and B<@depends@> to insert the package name and the dependency information used. =item Copyright: The copyright file to by used. If omitted, the GPL 2 will be used. =item Preinst: Postinst: Prerm: Postrm: Maintainerscripts executed before/after installation/removal of the package. See the Debian developers reference for a description (package developers-reference). =item Extra-Files: A comma-separated list of files to copy to the F directory. =item Files: Files to be copied into some directory of the created package. Each line contains a source filename and a destination directory, space-separated. As with other multi-line headers, all lines but the first must be indented. Example: Files: foo-cron /etc/cron.d/ foo-cron-helper /usr/local/bin/ =item File: Files to be copied into some directory of the created package, specified inline in the source control file. The field syntax is the name of the files to be created, followed by lines indented by 1 space denoting file content; leading space will be trimmed. An octal file mode may be specified after the filename; it defaults to 644, and will be normalised to 644 or 755. Example: File: /usr/local/bin/true 755 #!/bin/sh exit 0 =back See F for more information. =head1 OPTIONS =over 4 =item --full | -f Do a complete build. B will be called, that is, a full package will be built and signed, suitable for upload to the Debian servers. The ID used to signed is taken from, in that order, the user from the last entry of a supplied changelog, the Maintainer: field in the equivs control file, or the local username. =item --arch | -a Build package for the specified architecture. Used e.g. for building packages for hurd under linux. B uses B to provide this facility. =back =head1 DISTRIBUTION Distribution is subject to the GNU public licence version 2. =head1 AUTHOR Martin Bialasinski =head1 SEE ALSO equivs-control(1), /usr/share/doc/equivs/README.Debian e/debian/compat0000644000000000000000000000000211641247525010617 0ustar 7 e/debian/control0000644000000000000000000000166711641252600011024 0ustar Source: equivs Section: admin Priority: extra Maintainer: Peter Samuelson Standards-Version: 3.9.2 Build-Depends: debhelper Package: equivs Depends: perl, debhelper, dpkg-dev, make, fakeroot, ${misc:Depends} Architecture: all Description: Circumvent Debian package dependencies This package provides a tool to create trivial Debian packages. Typically these packages contain only dependency information, but they can also include normal installed files like other packages do. . One use for this is to create a metapackage: a package whose sole purpose is to declare dependencies and conflicts on other packages so that these will be automatically installed, upgraded, or removed. . Another use is to circumvent dependency checking: by letting dpkg think a particular package name and version is installed when it isn't, you can work around bugs in other packages' dependencies. (Please do still file such bugs, though.) e/debian/equivs.examples0000644000000000000000000000001310377034415012464 0ustar examples/* e/debian/source/0002755000000000000000000000000011641260061010711 5ustar e/debian/source/format0000644000000000000000000000000411641252307012120 0ustar 1.0 e/debian/equivs-control.pod0000644000000000000000000000141010371057133013104 0ustar =head1 NAME equivs-control - create a configuration file for equivs-build =head1 SYNOPSIS B =head1 DESCRIPTION B copies a template control file as needed by the B command to the specified filename. You then have to edit the created file to reflect your choices. The control file has the form used by regular control files in source packages. You can delete the unneeded fields in the generated file. =head1 FILES =over 4 =item F This is the template file that gets copied to the given filename. =back =head1 DISTRIBUTION Distribution is subject to the GNU public licence version 2. =head1 AUTHOR Martin Bialasinski =head1 SEE ALSO L