mirror of
https://github.com/Project-OSS-Revival/alien.git
synced 2026-04-24 14:00:17 +00:00
Initial revision
This commit is contained in:
1
TODO
Normal file
1
TODO
Normal file
@@ -0,0 +1 @@
|
|||||||
|
* handling postinst script when converting to/from .slp packages.
|
||||||
15
gendiff.txt
Normal file
15
gendiff.txt
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
Alien can use special diff files to help make alien packages conform to
|
||||||
|
debian policy. This is only used when you are converting to deb format. This
|
||||||
|
documents breifly explains how to make them. It assumes you are familiar with
|
||||||
|
working with debian source packages.
|
||||||
|
|
||||||
|
* Use "alien -g file.rpm" to generate a "source" directory tree.
|
||||||
|
* Make whatever changes you need to make to debian/rules, add other files,
|
||||||
|
whatever.
|
||||||
|
* Use dpkg-buildpackage to generate a standard debian .diff.gz file, and
|
||||||
|
stick it in /var/lib/alien.
|
||||||
|
* Test "alien file.rpm" - it should use your diff. If it works properly,
|
||||||
|
(it's best if lintian is happy with the resulting .deb too), send the
|
||||||
|
.diff.gz file to me for inclusion in alien.
|
||||||
|
|
||||||
|
-- Joey Hess <joeyh@master.debian.org>
|
||||||
175
lib/Alien.pm
Normal file
175
lib/Alien.pm
Normal file
@@ -0,0 +1,175 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
#
|
||||||
|
# Misc. functions used by alien.
|
||||||
|
|
||||||
|
package Alien;
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
# Print out a status line.
|
||||||
|
sub Status { my $message=shift;
|
||||||
|
print "-- $message\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
# Print out an error message and exit the program.
|
||||||
|
sub Error { my $message=shift;
|
||||||
|
print STDERR "alien: $message\n";
|
||||||
|
exit 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Run a system command, and print an error message if it fails.
|
||||||
|
# The errormessage parameter is optional.
|
||||||
|
sub SafeSystem { my ($command,$errormessage)=@_;
|
||||||
|
my $ret=system $command;
|
||||||
|
if (int($ret/256) > 0) {
|
||||||
|
$errormessage="Error running: $command" if !$errormessage;
|
||||||
|
Error($errormessage);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Make the passed directory. Exits with error if the directory already
|
||||||
|
# exists.
|
||||||
|
sub SafeMkdir { my ($dir)=@_;
|
||||||
|
if (-e $dir) {
|
||||||
|
Error("Directory $dir already exists.\nRemove it and re-run alien.");
|
||||||
|
}
|
||||||
|
mkdir $dir,0755 || Error("Unable to make directory, \"$dir\": $!");
|
||||||
|
}
|
||||||
|
|
||||||
|
# Pass the filename of a package.
|
||||||
|
# Returns "rpm" or "tgz" or "deb", depending on what it thinks the file type
|
||||||
|
# is, based on the filename.
|
||||||
|
# Perhaps this should call file(1), instead?
|
||||||
|
#
|
||||||
|
# Note that the file type this returns corresponds to directories in
|
||||||
|
# $libdir.
|
||||||
|
sub FileType { my $file=shift;
|
||||||
|
if ($file=~m/.*\.rpm/ ne undef) {
|
||||||
|
return 'rpm';
|
||||||
|
}
|
||||||
|
elsif ($file=~m/.*\.(tgz|tar\.gz)/ ne undef) {
|
||||||
|
return 'tgz';
|
||||||
|
}
|
||||||
|
elsif ($file=~m/.*\.deb/ ne undef) {
|
||||||
|
return 'deb';
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
Error("Format of filename bad: $file");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Pass this the name and version and revision of a package, it will return the
|
||||||
|
# filename of a patch file for the package or undef if there is none.
|
||||||
|
sub GetPatch { my ($name,$version,$revision)=@_;
|
||||||
|
my @patches=glob("$main::patchdir/$name\_$version-$revision*.diff.gz");
|
||||||
|
if ($#patches < 0) {
|
||||||
|
# try not matching the revision, see if that helps.
|
||||||
|
@patches=glob("$main::patchdir/$name\_$version*.diff.gz");
|
||||||
|
if ($#patches < 0) {
|
||||||
|
# fallback to anything that matches the name.
|
||||||
|
@patches=glob("$main::patchdir/$name\_*.diff.gz");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# If we ended up with multiple matches, return the first.
|
||||||
|
return $patches[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
# Apply the given patch file to the given subdirectory.
|
||||||
|
sub Patch { my ($patchfile,$subdir)=@_;
|
||||||
|
Status("Patching in $patchfile");
|
||||||
|
chdir $subdir;
|
||||||
|
# cd .. here in case the patchfile's name was a relative path.
|
||||||
|
# The -f passed to zcat makes it pass uncompressed files through
|
||||||
|
# without error.
|
||||||
|
SafeSystem("(cd ..;zcat -f $patchfile) | patch -p1","Patch error.\n");
|
||||||
|
# look for .rej files
|
||||||
|
if (`find . -name "*.rej"`) {
|
||||||
|
Error("Patch failed: giving up.");
|
||||||
|
}
|
||||||
|
SafeSystem('find . -name \'*.orig\' -exec rm {} \\;',"Error removing .orig files");
|
||||||
|
chdir "..";
|
||||||
|
}
|
||||||
|
|
||||||
|
# Returns the 822-date.
|
||||||
|
sub GetDate {
|
||||||
|
my $date=`822-date`;
|
||||||
|
chomp $date;
|
||||||
|
if (!$date) {
|
||||||
|
Error("822-date did not return a valid result.\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
return $date;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Returns a email address for the current user.
|
||||||
|
sub GetEmail {
|
||||||
|
if (!$ENV{EMAIL}) {
|
||||||
|
my $login = getlogin || (getpwuid($<))[0] || $ENV{USER};
|
||||||
|
open (MAILNAME,"</etc/mailname");
|
||||||
|
my $mailname=<MAILNAME>;
|
||||||
|
chomp $mailname;
|
||||||
|
close MAILNAME;
|
||||||
|
if (!$mailname) {
|
||||||
|
$mailname=`hostname -f`;
|
||||||
|
chomp $mailname;
|
||||||
|
}
|
||||||
|
return "$login\@$mailname";
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return $ENV{EMAIL};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Returns the user name of the user who is running this.
|
||||||
|
sub GetUserName {
|
||||||
|
my $username;
|
||||||
|
my $username_in_passwd=undef;
|
||||||
|
|
||||||
|
my $login = getlogin || (getpwuid($<))[0] || $ENV{USER};
|
||||||
|
|
||||||
|
open (PASSWD,"</etc/passwd");
|
||||||
|
while (<PASSWD>) {
|
||||||
|
my (@fields)=split(/:/,$_);
|
||||||
|
if ($fields[0] eq $login) {
|
||||||
|
$username=$fields[4];
|
||||||
|
$username_in_passwd=1; # don't try NIS, no matter what.
|
||||||
|
close PASSWD;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
close PASSWD;
|
||||||
|
|
||||||
|
if (!$username_in_passwd && !$username && -x "/usr/bin/ypmatch") {
|
||||||
|
# Give NIS a try.
|
||||||
|
open (YPMATCH,"ypmatch $login passwd.byname |");
|
||||||
|
my (@fields)=split(/:/,<YPMATCH>);
|
||||||
|
$username=$fields[4];
|
||||||
|
close YPMATCH;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Remove GECOS(?) fields from username.
|
||||||
|
$username=~s/,.*//g;
|
||||||
|
|
||||||
|
# The ultimate fallback.
|
||||||
|
if (!$username) {
|
||||||
|
$username=$login;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $username;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Fill out a template, and save it to the passed location.
|
||||||
|
# The hash that is passed to this function lists the tags that can be onthe
|
||||||
|
# template, and the values to fill in for those tags.
|
||||||
|
sub FillOutTemplate { my ($fn,$destfn,%fields)=@_;
|
||||||
|
open (IN,"<$fn") || Error("$fn: $!");
|
||||||
|
open (OUT,">$destfn") || Error("$destfn: $!");
|
||||||
|
while (<IN>) {
|
||||||
|
s/#(.*?)#/$fields{$1}/g;
|
||||||
|
print OUT $_;
|
||||||
|
}
|
||||||
|
close OUT;
|
||||||
|
close IN;
|
||||||
|
}
|
||||||
|
|
||||||
|
1
|
||||||
131
lib/Fromdeb.pm
Normal file
131
lib/Fromdeb.pm
Normal file
@@ -0,0 +1,131 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
#
|
||||||
|
# Package for converting from a .deb file.
|
||||||
|
|
||||||
|
package From::deb;
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
# Global variable initialization.
|
||||||
|
|
||||||
|
# This is set to 1 if dpkg-deb is in the path.
|
||||||
|
my $dpkg_deb=undef;
|
||||||
|
my $dir;
|
||||||
|
foreach $dir (split(/:/,$ENV{PATH})) {
|
||||||
|
if (-x "$dir/dpkg-deb") {
|
||||||
|
$dpkg_deb=1;
|
||||||
|
last;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Query a deb file for fields, and return a hash of the fields found.
|
||||||
|
# Pass the filename of the deb file to query.
|
||||||
|
sub GetFields { my ($self,$file)=@_;
|
||||||
|
my %fields;
|
||||||
|
|
||||||
|
# Extract the control file from the deb file.
|
||||||
|
my @control;
|
||||||
|
if ($dpkg_deb) {
|
||||||
|
@control = `dpkg-deb --info $file control`;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
@control = `ar p $file control.tar.gz | tar Oxzf - control`;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Parse control file and extract fields.
|
||||||
|
my $i=0;
|
||||||
|
while ($i<=$#control) {
|
||||||
|
$_ = $control[$i];
|
||||||
|
chomp;
|
||||||
|
$fields{NAME} = $1 if (/^Package: (.+)/i);
|
||||||
|
$fields{VERSION} = $1 if (/^Version: (.+)/i);
|
||||||
|
$fields{ARCH} = $1 if (/^Architecture: (.+)/i);
|
||||||
|
$fields{MAINTAINER} = $1 if (/^Maintainer: (.+)/i);
|
||||||
|
$fields{DEPENDS} = $1 if (/^Depends: (.+)/i);
|
||||||
|
$fields{REQUIRES} = $1 if (/^Requires: (.+)/i);
|
||||||
|
$fields{GROUP} = $1 if (/^Section: (.+)/i);
|
||||||
|
if (/^Description: (.+)/i) {
|
||||||
|
$fields{SUMMARY} = "$1";
|
||||||
|
$i++;
|
||||||
|
while (($i<=$#control) && ($control[$i])) {
|
||||||
|
$control[$i] =~ s/^ //g; #remove leading space
|
||||||
|
$control[$i] = "\n" if ($control[$i] eq ".\n");
|
||||||
|
$fields{DESCRIPTION}.=$control[$i];
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
$i--;
|
||||||
|
}
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
|
||||||
|
$fields{COPYRIGHT}="see /usr/doc/$fields{NAME}/copyright";
|
||||||
|
$fields{GROUP}="unknown" if (!$fields{GROUP});
|
||||||
|
$fields{DISTRIBUTION}="Debian";
|
||||||
|
if ($fields{VERSION} =~ /(.+)-(.+)/) {
|
||||||
|
$fields{VERSION} = $1;
|
||||||
|
$fields{RELEASE} = $2;
|
||||||
|
} else {
|
||||||
|
$fields{RELEASE} = '1';
|
||||||
|
}
|
||||||
|
# Just get rid of epochs for now.
|
||||||
|
if ($fields{VERSION} =~ /\d+:(.*)/) {
|
||||||
|
$fields{VERSION} = $1;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Read in the list of conffiles, if any.
|
||||||
|
if ($dpkg_deb) {
|
||||||
|
$fields{CONFFILES}=`dpkg-deb --info $file conffiles 2>/dev/null`;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$fields{CONFFILES}=
|
||||||
|
`ar p $file control.tar.gz | tar Oxzf - conffiles 2>/dev/null`;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Read in the list of all files.
|
||||||
|
# Note that tar doesn't supply a leading `/', so we have to add that.
|
||||||
|
$fields{FILELIST}=undef;
|
||||||
|
if ($dpkg_deb) {
|
||||||
|
my $fn;
|
||||||
|
foreach $fn (`dpkg-deb --fsys-tarfile $file | tar tf -`) {
|
||||||
|
$fields{FILELIST}.="/$fn";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
my $fn;
|
||||||
|
foreach $fn (`ar p $file data.tar.gz | tar tzf -`) {
|
||||||
|
$fields{FILELIST}.="/$fn";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($main::scripts) {
|
||||||
|
# Read in the scripts, if any.
|
||||||
|
my $field;
|
||||||
|
for $field ('postinst', 'postrm', 'preinst', 'prerm') {
|
||||||
|
if ($dpkg_deb) {
|
||||||
|
$fields{uc($field)}=`dpkg-deb --info $file $field 2>/dev/null`;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$fields{uc($field)}=
|
||||||
|
`ar p $file control.tar.gz | tar Oxzf - $field 2>/dev/null`;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$fields{RELEASE}++ unless $main::keep_version;
|
||||||
|
|
||||||
|
return %fields;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Handles unpacking of debs.
|
||||||
|
sub Unpack { my ($self,$file,%fields)=@_;
|
||||||
|
if ($dpkg_deb) {
|
||||||
|
Alien::SafeSystem ("(cd ..;dpkg-deb -x $file $fields{NAME}-$fields{VERSION})",
|
||||||
|
"Error unpacking $file\n");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
Alien::SafeSystem ("(cd ..;ar p $file data.tar.gz) | tar zxpf -",
|
||||||
|
"Error unpacking $file\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
1
|
||||||
128
lib/Fromrpm.pm
Normal file
128
lib/Fromrpm.pm
Normal file
@@ -0,0 +1,128 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
#
|
||||||
|
# Package for converting from a .rpm file.
|
||||||
|
|
||||||
|
package From::rpm;
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
# Query a rpm file for fields, and return a hash of the fields found.
|
||||||
|
# Pass the filename of the rpm file to query.
|
||||||
|
sub GetFields { my ($self,$file)=@_;
|
||||||
|
my %fields;
|
||||||
|
|
||||||
|
# This maps rpm fields (the keys) to the name we want
|
||||||
|
# for each field (the values).
|
||||||
|
my %fieldtrans;
|
||||||
|
|
||||||
|
# Get the scripts fields too?
|
||||||
|
if ($main::scripts) {
|
||||||
|
%fieldtrans=(
|
||||||
|
'PREIN' => 'PREINST',
|
||||||
|
'POSTIN' => 'POSTINST',
|
||||||
|
'PREUN' => 'PRERM',
|
||||||
|
'POSTUN' => 'POSTRM',
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
# These fields need no translation.
|
||||||
|
my $field;
|
||||||
|
foreach $field ('NAME','VERSION','RELEASE','ARCH','CHANGELOGTEXT','SUMMARY',
|
||||||
|
'DESCRIPTION', 'COPYRIGHT', 'DEFAULTPREFIX') {
|
||||||
|
$fieldtrans{$field}=$field;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Use --queryformat to pull out all the fields we need.
|
||||||
|
foreach $field (keys(%fieldtrans)) {
|
||||||
|
$_=`rpm -qp $file --queryformat \%{$field}`;
|
||||||
|
$fields{$fieldtrans{$field}}=$_ if $_ ne '(none)';
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($main::scripts) {
|
||||||
|
# Fix up the scripts - they are always shell scripts, so make them so.
|
||||||
|
foreach $field ('PREINST','POSTINST','PRERM','POSTRM') {
|
||||||
|
$fields{$field}="#!/bin/sh\n$fields{$field}" if $fields{$field};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Get the conffiles list.
|
||||||
|
# TOCHECK: if this is a relocatable package and DEFAULTPREFIX is set,
|
||||||
|
# do we need to prepend DEFAULTPREFIX to each of these filenames?
|
||||||
|
$fields{CONFFILES}=`rpm -qcp $file`;
|
||||||
|
|
||||||
|
# Include the output of rpm -qi in the copyright file.
|
||||||
|
$fields{COPYRIGHT_EXTRA}=`rpm -qpi $file`;
|
||||||
|
|
||||||
|
# Sanity check fields.
|
||||||
|
if (!$fields{SUMMARY}) {
|
||||||
|
# Older rpms will have no summary, but will have a
|
||||||
|
# description. We'll take the 1st line out of the
|
||||||
|
# description, and use it for the summary.
|
||||||
|
($fields{SUMMARY})=($fields{DESCRIPTION}."\n")=~m/(.*?)\n/m;
|
||||||
|
|
||||||
|
# Fallback.
|
||||||
|
if (!$fields{SUMMARY}) {
|
||||||
|
$fields{SUMMARY}="Converted RPM package";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!$fields{COPYRIGHT}) {
|
||||||
|
$fields{COPYRIGHT}="unknown";
|
||||||
|
}
|
||||||
|
if (!$fields{DESCRIPTION}) {
|
||||||
|
$fields{DESCRIPTION}=$fields{SUMMARY};
|
||||||
|
}
|
||||||
|
|
||||||
|
# Convert ARCH into string, if it isn't already a string.
|
||||||
|
if ($fields{ARCH} eq 1) {
|
||||||
|
$fields{ARCH}='i386';
|
||||||
|
}
|
||||||
|
elsif ($fields{ARCH} eq 2) {
|
||||||
|
$fields{ARCH}='alpha';
|
||||||
|
}
|
||||||
|
elsif ($fields{ARCH} eq 3) {
|
||||||
|
$fields{ARCH}='sparc';
|
||||||
|
}
|
||||||
|
elsif ($fields{ARCH} eq 6) {
|
||||||
|
$fields{ARCH}='m68k';
|
||||||
|
}
|
||||||
|
elsif ($fields{ARCH} eq "noarch") { # noarch = all
|
||||||
|
$fields{ARCH}='all';
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($fields{RELEASE} eq undef || $fields{VERSION} eq undef|| !$fields{NAME}) {
|
||||||
|
Alien::Error("Error querying rpm file.");
|
||||||
|
}
|
||||||
|
|
||||||
|
$fields{RELEASE}++ unless $main::keep_version;
|
||||||
|
$fields{DISTRIBUTION}="Red Hat";
|
||||||
|
|
||||||
|
return %fields;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Unpack a rpm file.
|
||||||
|
sub Unpack { my ($self,$file,%fields)=@_;
|
||||||
|
Alien::SafeSystem("(cd ..;rpm2cpio $file) | cpio --extract --make-directories --no-absolute-filenames --preserve-modification-time",
|
||||||
|
"Error unpacking $file\n");
|
||||||
|
if ($fields{DEFAULTPREFIX} ne undef) {
|
||||||
|
print "Moving unpacked files into $fields{DEFAULTPREFIX}\n";
|
||||||
|
|
||||||
|
# We have extracted the package, but it's in the wrong place. Move it
|
||||||
|
# to be under the DEFAULTPREFIX directory.
|
||||||
|
# First, get a list of files to move.
|
||||||
|
my $filelist=join ' ',glob('*');
|
||||||
|
|
||||||
|
# Now, make the destination directory.
|
||||||
|
my $collect=undef;
|
||||||
|
foreach (split(m:/:,$fields{DEFAULTPREFIX})) {
|
||||||
|
if ($_ ne undef) { # this keeps us from using anything but relative paths.
|
||||||
|
$collect.="$_/";
|
||||||
|
mkdir $collect,0755 || Alien::Error("Unable to make directory: $collect: $!");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
# Now move all files in the package to the directory we made.
|
||||||
|
Alien::SafeSystem("mv $filelist ./$fields{DEFAULTPREFIX}",
|
||||||
|
"Error moving unpacked files into the default prefix directory\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
1
|
||||||
139
lib/Fromslp.pm
Normal file
139
lib/Fromslp.pm
Normal file
@@ -0,0 +1,139 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
#
|
||||||
|
# Package for converting from a .slp (Stampede) file.
|
||||||
|
|
||||||
|
package From::slp;
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
# Becuase .slp files are a binary format we parse by hand, I need to code in
|
||||||
|
# the details of the structure here.
|
||||||
|
|
||||||
|
# Complete sizeof(slpformat) from slp.h in the stampede package manager source.
|
||||||
|
$From::slp::footer_size=3784;
|
||||||
|
|
||||||
|
# This is the pack format string for the footer.
|
||||||
|
$From::slp::footer_packstring="A756IIIIA128A128A80A1536A512A512A30A30IA20A20III";
|
||||||
|
|
||||||
|
# What package format are we up to now? (Lowest one this is still compatable
|
||||||
|
# with.)
|
||||||
|
$From::slp::footer_version=5;
|
||||||
|
|
||||||
|
# Pass it a chunk of footer, it will attempt a decode and spit back the result
|
||||||
|
# in a hash, %fields.
|
||||||
|
sub DecodeFooter { my $footer=shift;
|
||||||
|
my %fields;
|
||||||
|
|
||||||
|
($fields{CONFFILES},
|
||||||
|
$fields{PRIORITY},
|
||||||
|
$fields{COMPRESSTYPE},
|
||||||
|
$fields{RELEASE},
|
||||||
|
$fields{COPYRIGHT},
|
||||||
|
$fields{CONFLICTS},
|
||||||
|
$fields{SETUPSCRIPT},
|
||||||
|
$fields{SUMMARY},
|
||||||
|
$fields{DESCRIPTION},
|
||||||
|
$fields{DEPENDS},
|
||||||
|
$fields{PROVIDES},
|
||||||
|
$fields{AUTHOR},
|
||||||
|
$fields{DATE},
|
||||||
|
$fields{COMPILER},
|
||||||
|
$fields{VERSION},
|
||||||
|
$fields{NAME},
|
||||||
|
$fields{ARCH},
|
||||||
|
$fields{GROUP},
|
||||||
|
$fields{SLPKGVERSION},
|
||||||
|
)=unpack($From::slp::footer_packstring,$footer);
|
||||||
|
|
||||||
|
# A simple sanity check.
|
||||||
|
if (! $fields{SLPKGVERSION} || $fields{SLPKGVERSION} < $From::slp::footer_version) {
|
||||||
|
Alien::Error("This is not a V$From::slp::footer_version or greater Stampede package");
|
||||||
|
}
|
||||||
|
|
||||||
|
return %fields;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Pass it a filename of a .slp file, it will pull out a footer and return it
|
||||||
|
# in a scalar.
|
||||||
|
sub GetFooter { my ($filename)=@_;
|
||||||
|
open (SLP,"<$filename") || Alien::Error("unable to read $filename: $!");
|
||||||
|
seek SLP,(-1 * $From::slp::footer_size),2; # position at beginning of footer (2 = seek from EOF)
|
||||||
|
read SLP,$_,$From::slp::footer_size;
|
||||||
|
close SLP;
|
||||||
|
return $_;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Query a slp file for fields, and return a hash of the fields found.
|
||||||
|
# Pass the filename of the slp file to query.
|
||||||
|
sub GetFields { my ($self,$file)=@_;
|
||||||
|
my %fields=DecodeFooter(GetFooter($file));
|
||||||
|
|
||||||
|
# Massage the fields into appropriate formats.
|
||||||
|
if ($fields{CONFFILES}) {
|
||||||
|
$fields{CONFFILES}=~s/:/\n/g;
|
||||||
|
$fields{CONFFILES}.="\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($fields{COPYRIGHT} == 0) {
|
||||||
|
$fields{COPYRIGHT}="GPL";
|
||||||
|
}
|
||||||
|
elsif ($fields{COPYRIGHT} == 1) {
|
||||||
|
$fields{COPYRIGHT}="BSD";
|
||||||
|
}
|
||||||
|
elsif ($fields{COPYRIGHT} == 2) {
|
||||||
|
$fields{COPYRIGHT}="LGPL";
|
||||||
|
}
|
||||||
|
elsif ($fields{COPYRIGHT} == 3) {
|
||||||
|
$fields{COPYRIGHT}="unknown";
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
Alien::Warning("I don't know what copyright type \"$fields{COPYRIGHT}\" is.");
|
||||||
|
$fields{COPYRIGHT}="unknown";
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($fields{ARCH} == 0) {
|
||||||
|
$fields{ARCH}='all';
|
||||||
|
}
|
||||||
|
elsif ($fields{ARCH} == 1) {
|
||||||
|
$fields{ARCH}='i386';
|
||||||
|
}
|
||||||
|
elsif ($fields{ARCH} == 2) {
|
||||||
|
$fields{ARCH}='sparc';
|
||||||
|
}
|
||||||
|
elsif ($fields{ARCH} == 3) {
|
||||||
|
$fields{ARCH}='alpha';
|
||||||
|
}
|
||||||
|
elsif ($fields{ARCH} == 4) {
|
||||||
|
$fields{ARCH}='powerpc';
|
||||||
|
}
|
||||||
|
elsif ($fields{ARCH} == 5) {
|
||||||
|
$fields{ARCH}='m68k';
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
Alien::Error("An unknown architecture of \"$fields{ARCH}\" was specified.");
|
||||||
|
}
|
||||||
|
|
||||||
|
$fields{RELEASE}++ unless $main::keep_version;
|
||||||
|
$fields{DISTRIBUTION}="Stampede";
|
||||||
|
|
||||||
|
# Read in the list of all files.
|
||||||
|
# Note that they will have a leading "." we don't want.
|
||||||
|
$fields{FILELIST}=undef;
|
||||||
|
my $fn;
|
||||||
|
foreach $fn (`tar -Itf $file`) {
|
||||||
|
$fn=~s/^\.//;
|
||||||
|
$fields{FILELIST}.="$fn\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
# TODO: read in postinst script.
|
||||||
|
|
||||||
|
return %fields;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Unpack a slp file.
|
||||||
|
sub Unpack { my ($self,$file,%fields)=@_;
|
||||||
|
# Note it's a .tar.bz2, this the -I
|
||||||
|
Alien::SafeSystem ("(cd ..;cat $file) | tar Ixpf -","Error unpacking $file\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
1
|
||||||
96
lib/Fromtgz.pm
Normal file
96
lib/Fromtgz.pm
Normal file
@@ -0,0 +1,96 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
#
|
||||||
|
# Package for converting from a tgz file.
|
||||||
|
|
||||||
|
package From::tgz;
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
# Query a tgz file for fields, and return a hash of the fields found.
|
||||||
|
# Pass the filename of the tgz file to query.
|
||||||
|
sub GetFields { my ($self,$file)=@_;
|
||||||
|
my %fields;
|
||||||
|
|
||||||
|
# Get basename of the filename.
|
||||||
|
my ($basename)=('/'.$file)=~m#^/?.*/(.*?)$#;
|
||||||
|
|
||||||
|
# Strip out any tar extentions.
|
||||||
|
$basename=~s/\.(tgz|tar\.gz)$//;
|
||||||
|
|
||||||
|
if ($basename=~m/(.*)-(.*)/ ne undef) {
|
||||||
|
$fields{NAME}=$1;
|
||||||
|
$fields{VERSION}=$2;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$fields{NAME}=$basename;
|
||||||
|
$fields{VERSION}=1;
|
||||||
|
}
|
||||||
|
|
||||||
|
$fields{ARCH}='i386';
|
||||||
|
if ($main::tgzdescription eq undef) {
|
||||||
|
$fields{SUMMARY}='Converted Slackware tgz package';
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$fields{SUMMARY}=$main::tgzdescription;
|
||||||
|
}
|
||||||
|
$fields{DESCRIPTION}=$fields{SUMMARY};
|
||||||
|
$fields{COPYRIGHT}="unknown";
|
||||||
|
$fields{RELEASE}=1;
|
||||||
|
$fields{DISTRIBUTION}="Slackware";
|
||||||
|
|
||||||
|
# Now figure out the conffiles. Assume anything in etc/ is a conffile.
|
||||||
|
# It's a little nasty to do it here, but it's much cleaner than waiting
|
||||||
|
# until the tar file is unpacked and then doing it.
|
||||||
|
$fields{CONFFILES}='';
|
||||||
|
open (FILELIST,"tar zvtf $file | grep etc/ |")
|
||||||
|
|| Alien::Error("Getting filelist: $!");
|
||||||
|
while (<FILELIST>) {
|
||||||
|
# Make sure it's a normal file. This is looking at the
|
||||||
|
# permissions, and making sure the first character is '-'.
|
||||||
|
# Ie: -rw-r--r--
|
||||||
|
if (m:^-:) {
|
||||||
|
# Strip it down to the filename.
|
||||||
|
m/^(.*) (.*)$/;
|
||||||
|
$fields{CONFFILES}.="/$2\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
close FILELIST;
|
||||||
|
|
||||||
|
# Now get the whole filelist. We have to add leading /'s to the filenames.
|
||||||
|
# We have to ignore all files under /install/
|
||||||
|
$fields{FILELIST}='';
|
||||||
|
open (FILELIST, "tar ztf $file |");
|
||||||
|
while (<FILELIST>) {
|
||||||
|
if ($_=~m:^install/: eq undef) {
|
||||||
|
$fields{FILELIST}.="/$_";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
close FILELIST;
|
||||||
|
|
||||||
|
# Now get the scripts.
|
||||||
|
if ($main::scripts) {
|
||||||
|
my %scripttrans=(
|
||||||
|
'doinst.sh' => 'POSTINST',
|
||||||
|
'delete.sh' => 'POSTRM',
|
||||||
|
'predelete.sh' => 'PRERM',
|
||||||
|
'predoinst.sh' => 'PREINST',
|
||||||
|
);
|
||||||
|
my $script;
|
||||||
|
foreach $script (keys(%scripttrans)) {
|
||||||
|
$fields{$scripttrans{$script}}=
|
||||||
|
`tar Oxzf $file install/$script 2>/dev/null`;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return %fields;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Handles unpacking of tgz's.
|
||||||
|
sub Unpack { my ($self,$file)=@_;
|
||||||
|
Alien::SafeSystem ("(cd ..;cat $file) | tar zxpf -","Error unpacking $file\n");
|
||||||
|
|
||||||
|
# Delete this install directory that has slackware info in it.
|
||||||
|
Alien::SafeSystem ("rm -rf install");
|
||||||
|
}
|
||||||
|
|
||||||
|
1
|
||||||
41
lib/Slp.pm
Normal file
41
lib/Slp.pm
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
# Becuase .slp files are a binary format we parse by hand, I need to code in
|
||||||
|
# the details of the structure here.
|
||||||
|
|
||||||
|
package slp;
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
# Complete sizeof(slpformat) from slp.h in the stampede package manager source.
|
||||||
|
$slp::footer_size=3784;
|
||||||
|
|
||||||
|
# This is the pack format string for the footer.
|
||||||
|
# (A=space terminated character, I=unsigned integer.)
|
||||||
|
$slp::footer_packstring="A756IIIIA128A128A80A1536A512A512A30A30IA20A20III";
|
||||||
|
|
||||||
|
# What package format are we up to now? (Lowest one this is still compatable
|
||||||
|
# with.)
|
||||||
|
$slp::footer_version=5;
|
||||||
|
|
||||||
|
# This is a translation table between architectures and the number
|
||||||
|
# that represents them in a slp package.
|
||||||
|
$slp::archtrans={
|
||||||
|
0 => 'all',
|
||||||
|
1 => 'i386',
|
||||||
|
2 => 'sparc',
|
||||||
|
3 => 'alpha',
|
||||||
|
4 => 'powerpc',
|
||||||
|
5 => 'm68k',
|
||||||
|
};
|
||||||
|
|
||||||
|
# This is a translation table between copyrights and the number that
|
||||||
|
# represents them in a slp package
|
||||||
|
$slp::copyrighttrans={
|
||||||
|
0 => 'GPL',
|
||||||
|
1 => 'BSD',
|
||||||
|
2 => 'LGPL',
|
||||||
|
3 => 'unknown',
|
||||||
|
254 => 'unknown',
|
||||||
|
};
|
||||||
|
|
||||||
|
1
|
||||||
113
lib/Todeb.pm
Normal file
113
lib/Todeb.pm
Normal file
@@ -0,0 +1,113 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
#
|
||||||
|
# Package for converting to .deb file.
|
||||||
|
|
||||||
|
package To::deb;
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
# Mangle the fields to fit debian standards.
|
||||||
|
sub FixFields { my ($self,%fields)=@_;
|
||||||
|
# Make sure package name is all lower case.
|
||||||
|
$fields{NAME}=lc($fields{NAME});
|
||||||
|
# Make sure the package name contains no invalid characters.
|
||||||
|
$fields{NAME} =~ tr/_/-/;
|
||||||
|
$fields{NAME} =~ s/[^a-z0-9-\.\+]//g;
|
||||||
|
|
||||||
|
# Fix up the description field to Debian standards (indented at
|
||||||
|
# least one space, no empty lines.)
|
||||||
|
my $description=undef;
|
||||||
|
my $line;
|
||||||
|
foreach $line (split(/\n/,$fields{DESCRIPTION})) {
|
||||||
|
$line=~s/\t/ /g; # change tabs to spaces.
|
||||||
|
$line=~s/\s+$//g; # remove trailing whitespace.
|
||||||
|
if (!$line) { # empty lines
|
||||||
|
$line=" .";
|
||||||
|
}
|
||||||
|
else { # normal lines
|
||||||
|
$line=" $line";
|
||||||
|
}
|
||||||
|
$description.=$line."\n";
|
||||||
|
}
|
||||||
|
chomp $description;
|
||||||
|
$fields{DESCRIPTION}=$description."\n";
|
||||||
|
|
||||||
|
return %fields;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Create debian/* files, either from a patch, or automatically.
|
||||||
|
sub Convert { my ($self,$workdir,%fields)=@_;
|
||||||
|
if ($main::generate && !$main::single) {
|
||||||
|
Alien::SafeSystem("cp -fa $workdir $workdir.orig", "Error creating $workdir.orig");
|
||||||
|
}
|
||||||
|
|
||||||
|
# Do the actual conversion here.
|
||||||
|
mkdir "$fields{NAME}-$fields{VERSION}/debian",0755
|
||||||
|
|| Alien::Error("Unable to make debian directory");
|
||||||
|
my $patchfile=$main::patchfile;
|
||||||
|
$patchfile=Alien::GetPatch($fields{NAME},$fields{VERSION},$fields{RELEASE}) if !$patchfile;
|
||||||
|
if ($patchfile) {
|
||||||
|
Alien::Patch($patchfile,$workdir);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$self->AutoDebianize($workdir,%fields);
|
||||||
|
}
|
||||||
|
chmod 0755,"$workdir/debian/rules";
|
||||||
|
|
||||||
|
# Make the .orig directory if we were instructed to do so.
|
||||||
|
if ($main::single) {
|
||||||
|
print "Directory $workdir prepared.\n";
|
||||||
|
}
|
||||||
|
elsif ($main::generate) {
|
||||||
|
print "Directories $workdir and $workdir.orig prepared.\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Fill out templates to create debian/* files.
|
||||||
|
# Pass it the work directory, and the type of package we are debianizing.
|
||||||
|
sub AutoDebianize { my ($self,$workdir,%fields)=@_;
|
||||||
|
Alien::Status("Automatic package debianization");
|
||||||
|
|
||||||
|
# Generate some more fields we need.
|
||||||
|
$fields{DATE}=Alien::GetDate();
|
||||||
|
$fields{EMAIL}=Alien::GetEmail();
|
||||||
|
$fields{USERNAME}=Alien::GetUserName();
|
||||||
|
|
||||||
|
# Fill out all the templates.
|
||||||
|
my $fn;
|
||||||
|
foreach $fn (glob("$main::libdir/to-$main::desttype/$main::filetype/*")) {
|
||||||
|
my $destfn=$fn;
|
||||||
|
$destfn=~s#^$main::libdir/to-$main::desttype/$main::filetype/##;
|
||||||
|
Alien::FillOutTemplate($fn,"$main::workdir/debian/$destfn",%fields);
|
||||||
|
}
|
||||||
|
|
||||||
|
# Autogenerate the scripts without templates, so the scripts
|
||||||
|
# only exist if they need to.
|
||||||
|
my $script;
|
||||||
|
foreach $script ('postinst','postrm','preinst','prerm') {
|
||||||
|
if ($fields{uc($script)}) {
|
||||||
|
open (OUT,">$workdir/debian/$script") ||
|
||||||
|
Alien::Error("$workdir/debian/$script: $!");;
|
||||||
|
print OUT $fields{uc($script)};
|
||||||
|
close OUT;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Passed the available info about the package in a hash, return the name of
|
||||||
|
# the debian package that will be made.
|
||||||
|
sub GetPackageName { my ($self,%fields)=@_;
|
||||||
|
return "$fields{NAME}_$fields{VERSION}-$fields{RELEASE}_$fields{ARCH}.deb";
|
||||||
|
}
|
||||||
|
|
||||||
|
# Build the debian package.
|
||||||
|
sub Build { my ($self)=@_;
|
||||||
|
Alien::SafeSystem("debian/rules binary","Package build failed.\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
# Install the debian package that is passed.
|
||||||
|
sub Install { my ($self,$package)=@_;
|
||||||
|
Alien::SafeSystem("dpkg --no-force-overwrite -i $package");
|
||||||
|
}
|
||||||
|
|
||||||
|
1
|
||||||
109
lib/Torpm.pm
Normal file
109
lib/Torpm.pm
Normal file
@@ -0,0 +1,109 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
#
|
||||||
|
# Package for converting to .rpm file.
|
||||||
|
|
||||||
|
package To::rpm;
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
# Mangle the fields to make rpm happy with them.
|
||||||
|
sub FixFields { my ($self,%fields)=@_;
|
||||||
|
# Make sure the version has no dashes in it.
|
||||||
|
$fields{VERSION} =~ tr/-/_/;
|
||||||
|
|
||||||
|
# Fix up the scripts. Since debian/slackware scripts can be anything, even
|
||||||
|
# perl programs or binary files, and redhat is limited to only shell scripts,
|
||||||
|
# we need to encode the files and add a scrap of shell script to make it
|
||||||
|
# unextract and run on the fly.
|
||||||
|
my $field;
|
||||||
|
foreach $field ('POSTINST', 'POSTRM', 'PREINST', 'PRERM') {
|
||||||
|
if ($fields{$field}) {
|
||||||
|
$fields{$field}=
|
||||||
|
"rm -f /tmp/alien.$field\n".
|
||||||
|
qq{perl -pe '\$_=unpack("u",\$_)' << '__EOF__' > /tmp/alien.$field\n}.
|
||||||
|
pack("u",$fields{$field}).
|
||||||
|
"__EOF__\n".
|
||||||
|
"sh /tmp/alien.$field \"\$@\"\n".
|
||||||
|
"rm -f /tmp/alien.$field\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return %fields;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Generate the spec file.
|
||||||
|
sub Convert { my ($self,$workdir,%fields)=@_;
|
||||||
|
Alien::Status("Automatic spec file generation");
|
||||||
|
|
||||||
|
# Create some more fields we will need.
|
||||||
|
my $pwd=`pwd`;
|
||||||
|
chomp $pwd;
|
||||||
|
$fields{BUILDROOT}="$pwd/$workdir"; # must be absolute filename.
|
||||||
|
|
||||||
|
# Remove directories from the filelist. Place %config in front of files
|
||||||
|
# that are conffiles.
|
||||||
|
my @conffiles=split(/\n/,$fields{CONFFILES});
|
||||||
|
my $filelist;
|
||||||
|
my $fn;
|
||||||
|
foreach $fn (split(/\n/,$fields{FILELIST})) {
|
||||||
|
if ($fn=~m:/$: eq undef) { # not a directory
|
||||||
|
my $efn=quotemeta($fn);
|
||||||
|
if (grep(m:^$efn$:,@conffiles)) { # it's a conffile
|
||||||
|
$filelist.="%config $fn\n";
|
||||||
|
}
|
||||||
|
else { # normal file
|
||||||
|
$filelist.="$fn\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$fields{FILELIST}=$filelist;
|
||||||
|
|
||||||
|
Alien::FillOutTemplate("$main::libdir/to-$main::desttype/$main::filetype/spec",
|
||||||
|
"$workdir/$fields{NAME}-$fields{VERSION}-$fields{RELEASE}.spec",%fields);
|
||||||
|
|
||||||
|
if ($main::generate) {
|
||||||
|
print "Directory $workdir prepared.\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Passed the available info about the package in a hash, return the name of
|
||||||
|
# the rpm package that will be made.
|
||||||
|
sub GetPackageName { my ($self,%fields)=@_;
|
||||||
|
|
||||||
|
# Ask rpm how it's set up. We want to know what architecture it will output,
|
||||||
|
# and where it will place rpms.
|
||||||
|
my ($rpmarch, $rpmdir);
|
||||||
|
foreach (`rpm --showrc`) {
|
||||||
|
chomp;
|
||||||
|
if (/^build arch\s+:\s(.*)$/) {
|
||||||
|
$rpmarch=$1;
|
||||||
|
}
|
||||||
|
elsif (/^rpmdir\s+:\s(.*)$/) {
|
||||||
|
$rpmdir=$1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!$rpmarch || !$rpmdir) {
|
||||||
|
Alien::Error("rpm --showrc failed.");
|
||||||
|
}
|
||||||
|
|
||||||
|
# Debian's "all" architecture is a special case, and the output rpm will
|
||||||
|
# be a noarch rpm.
|
||||||
|
if ($fields{ARCH} eq 'all') { $rpmarch='noarch' }
|
||||||
|
return "$rpmdir/$rpmarch/$fields{NAME}-$fields{VERSION}-$fields{RELEASE}.$rpmarch.rpm";
|
||||||
|
}
|
||||||
|
|
||||||
|
# Build a rpm file.
|
||||||
|
sub Build { my ($self,%fields)=@_;
|
||||||
|
# Debian's "all" architecture is a special case where we make noarch rpms.
|
||||||
|
my $buildarch;
|
||||||
|
if ($fields{ARCH} eq 'all') { $buildarch="--buildarch noarch" }
|
||||||
|
Alien::SafeSystem("rpm $buildarch -bb $ENV{RPMBUILDOPT} $fields{NAME}-$fields{VERSION}-$fields{RELEASE}.spec",
|
||||||
|
"Error putting together the RPM package.\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
# Install the passed rpm file.
|
||||||
|
sub Install { my ($self,$package)=shift;
|
||||||
|
Alien::SafeSystem("rpm -ivh $ENV{RPMINSTALLOPT} $package");
|
||||||
|
}
|
||||||
|
|
||||||
|
1
|
||||||
132
lib/Toslp.pm
Normal file
132
lib/Toslp.pm
Normal file
@@ -0,0 +1,132 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
#
|
||||||
|
# Package for converting to stampede package format.
|
||||||
|
|
||||||
|
# Pull in details on the binary footer.
|
||||||
|
use Slp;
|
||||||
|
|
||||||
|
package To::slp;
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
# Mangle the fields as necessary for a stampede package.
|
||||||
|
sub FixFields { my ($self,%fields)=@_;
|
||||||
|
# Mangle conffiles to the format they want.
|
||||||
|
$fields{CONFFILES}=~s/\n/:/g;
|
||||||
|
$fields{CONFFILES}=~s/:$//;
|
||||||
|
|
||||||
|
# Use priority optional for alien packages.
|
||||||
|
$fields{PRIORITY}=2;
|
||||||
|
|
||||||
|
# I always use bzip2 as the compression type.
|
||||||
|
$fields{COMPRESSTYPE}=0;
|
||||||
|
|
||||||
|
# Their version of release is a unsigned integer, so I need to
|
||||||
|
# convert anythnig more compilcated.
|
||||||
|
$fields{RELEASE}=int($fields{RELEASE});
|
||||||
|
|
||||||
|
# I don't try to guess copyright, just use unknown.
|
||||||
|
$fields{COPYRIGHT}=254;
|
||||||
|
|
||||||
|
# I don't try to fill these in with meaningful values.
|
||||||
|
$fields{CONFLICTS}="";
|
||||||
|
$fields{DEPENDS}="";
|
||||||
|
$fields{PROVIDES}="";
|
||||||
|
|
||||||
|
# TODO:
|
||||||
|
$fields{SETUPSTRIPT}=undef;
|
||||||
|
|
||||||
|
# Let's use the current date for this.
|
||||||
|
$fields{DATE}=`date`;
|
||||||
|
chomp $fields{DATE};
|
||||||
|
|
||||||
|
# Pick a compiler version.
|
||||||
|
if ($fields{ARCH} eq 'all') {
|
||||||
|
$fields{COMPILER}=253; # No compiler
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$fields{COMPILER}=252; # Unknown compiler
|
||||||
|
}
|
||||||
|
|
||||||
|
# Pick a binary format from the translation table.
|
||||||
|
$fields{BINFORMAT}=undef;
|
||||||
|
my $archnum;
|
||||||
|
foreach $archnum (keys %$slp::archtrans) {
|
||||||
|
if ($$slp::archtrans{$archnum} eq $fields{ARCH}) {
|
||||||
|
$fields{BINFORMAT} = $archnum;
|
||||||
|
last;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ($fields{BINFORMAT} eq undef) {
|
||||||
|
Alien::Error("Stampede does not appear to support architecure $fields{ARCH} packages.");
|
||||||
|
}
|
||||||
|
|
||||||
|
# This is really the software category; use unknown.
|
||||||
|
$fields{GROUP}=252;
|
||||||
|
|
||||||
|
$fields{SLPKGVERSION}=$slp::footer_version;
|
||||||
|
|
||||||
|
return %fields;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Do any necessary conversions on the file tree.
|
||||||
|
sub Convert { my ($self,$workdir,%fields)=@_;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Passed the available info about the package in a hash, return the name of
|
||||||
|
# the slp package that will be made.
|
||||||
|
sub GetPackageName { my ($self,%fields)=@_;
|
||||||
|
return "$fields{NAME}-$fields{VERSION}.slp";
|
||||||
|
}
|
||||||
|
|
||||||
|
# Returns a slp footer in a scalar.
|
||||||
|
sub MakeFooter { my %fields=@_;
|
||||||
|
# We cannot use the actual $slp::footer_packstring, becuase it uses
|
||||||
|
# space terminated strings (A) instead of null terminated strings (a).
|
||||||
|
# This is good for decoding, but not for encoding.
|
||||||
|
$_=$slp::footer_packstring;
|
||||||
|
tr/A/a/;
|
||||||
|
|
||||||
|
return pack($_,(
|
||||||
|
$fields{CONFFILES},
|
||||||
|
$fields{PRIORITY},
|
||||||
|
$fields{COMPRESSTYPE},
|
||||||
|
$fields{RELEASE},
|
||||||
|
$fields{COPYRIGHT},
|
||||||
|
$fields{CONFLICTS},
|
||||||
|
$fields{SETUPSCRIPT},
|
||||||
|
$fields{SUMMARY},
|
||||||
|
$fields{DESCRIPTION},
|
||||||
|
$fields{DEPENDS},
|
||||||
|
$fields{PROVIDES},
|
||||||
|
$fields{AUTHOR},
|
||||||
|
$fields{DATE},
|
||||||
|
$fields{COMPILER},
|
||||||
|
$fields{VERSION},
|
||||||
|
$fields{NAME},
|
||||||
|
$fields{ARCH},
|
||||||
|
$fields{GROUP},
|
||||||
|
$fields{SLPKGVERSION},
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
# Build a slp file.
|
||||||
|
# This consists of first generating a .tar.bz2 file, and then appending the
|
||||||
|
# footer to it.
|
||||||
|
sub Build { my ($self,%fields)=@_;
|
||||||
|
# Note the -I is for making a .bzip2 file.
|
||||||
|
Alien::SafeSystem("tar cIf ../".$self->GetPackageName(%fields)." .");
|
||||||
|
|
||||||
|
# Now append the footer to that.
|
||||||
|
open (OUT,">>../".$self->GetPackageName(%fields)) ||
|
||||||
|
Alien::Error("Unable to append footer.");
|
||||||
|
print OUT MakeFooter(%fields);
|
||||||
|
close OUT;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Install the passed slp file.
|
||||||
|
sub Install { my ($self,$package)=shift;
|
||||||
|
Alien::SafeSystem("slpi $package");
|
||||||
|
}
|
||||||
|
|
||||||
|
1
|
||||||
67
lib/Totgz.pm
Normal file
67
lib/Totgz.pm
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
#
|
||||||
|
# Package for converting to .tgz file.
|
||||||
|
|
||||||
|
package To::tgz;
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
sub FixFields { my ($self,%fields)=@_;
|
||||||
|
# Nothing to do.
|
||||||
|
|
||||||
|
return %fields;
|
||||||
|
}
|
||||||
|
|
||||||
|
sub Convert { my ($self,$workdir,%fields)=@_;
|
||||||
|
if ($main::scripts) {
|
||||||
|
my $install_made=undef;
|
||||||
|
my %scripttrans=(
|
||||||
|
'doinst.sh' => 'POSTINST',
|
||||||
|
'delete.sh' => 'POSTRM',
|
||||||
|
'predelete.sh' => 'PRERM',
|
||||||
|
'predoinst.sh' => 'PREINST',
|
||||||
|
);
|
||||||
|
my $script;
|
||||||
|
foreach $script (keys(%scripttrans)) {
|
||||||
|
if ($fields{$scripttrans{$script}}) {
|
||||||
|
if (!$install_made) {
|
||||||
|
Alien::Status("Setting up scripts.");
|
||||||
|
mkdir "$fields{NAME}-$fields{VERSION}/install",0755
|
||||||
|
|| Alien::Error("Unable to make install directory");
|
||||||
|
$install_made=1;
|
||||||
|
}
|
||||||
|
open (OUT,">$workdir/install/$script") ||
|
||||||
|
Alien::Error("$workdir/install/$script: $!");;
|
||||||
|
print OUT $fields{$scripttrans{$script}};
|
||||||
|
close OUT;
|
||||||
|
chmod 0755,"$workdir/install/$script";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Passed the available info about the package in a hash, return the name of
|
||||||
|
# the tgz package that will be made.
|
||||||
|
sub GetPackageName { my ($self,%fields)=@_;
|
||||||
|
return "$fields{NAME}-$fields{VERSION}-$fields{RELEASE}.tgz";
|
||||||
|
}
|
||||||
|
|
||||||
|
# Build a tgz file.
|
||||||
|
sub Build { my ($self,%fields)=@_;
|
||||||
|
Alien::SafeSystem("tar czf ../".$self->GetPackageName(%fields)." .");
|
||||||
|
}
|
||||||
|
|
||||||
|
# Install the passed tgz file.
|
||||||
|
sub Install { my ($self,$package)=shift;
|
||||||
|
if (-x "/sbin/installpkg") {
|
||||||
|
Alien::SafeSystem("/sbin/installpkg $package");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
print STDERR "Sorry, I cannot install the generated .tgz file,\n";
|
||||||
|
print STDERR "\"$package\" because /sbin/installpkg is not\n";
|
||||||
|
print STDERR "present. You can use tar to install it yourself.\n";
|
||||||
|
exit 1; # otherwise alien will delete the package file on us.
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
1
|
||||||
4
lib/test
Normal file
4
lib/test
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
use Alien;
|
||||||
|
use Fromslp;
|
||||||
|
|
||||||
|
%fields=From::slp::DecodeFooter(From::slp::GetFooter(shift));
|
||||||
1
lib/to-deb/rpm/conffiles
Normal file
1
lib/to-deb/rpm/conffiles
Normal file
@@ -0,0 +1 @@
|
|||||||
|
#CONFFILES#
|
||||||
54
lib/to-deb/rpm/rules
Executable file
54
lib/to-deb/rpm/rules
Executable file
@@ -0,0 +1,54 @@
|
|||||||
|
#!/usr/bin/make -f
|
||||||
|
#
|
||||||
|
# This is a special rules files for handling alien or binary packages
|
||||||
|
# Christoph Lameter, October 30, 1996
|
||||||
|
|
||||||
|
package=#NAME#
|
||||||
|
|
||||||
|
debian/build:
|
||||||
|
$(checkdir)
|
||||||
|
touch debian/build
|
||||||
|
|
||||||
|
clean:
|
||||||
|
$(checkdir)
|
||||||
|
-rm -f debian/build
|
||||||
|
-rm -rf *~ debian/tmp debian/*~ debian/files*
|
||||||
|
|
||||||
|
binary-indep: checkroot debian/build
|
||||||
|
$(checkdir)
|
||||||
|
# There are no architecture-independent files to be uploaded
|
||||||
|
# generated by this package. If there were any they would be
|
||||||
|
# made here.
|
||||||
|
|
||||||
|
binary-arch: checkroot debian/build
|
||||||
|
$(checkdir)
|
||||||
|
-rm -rf debian/tmp
|
||||||
|
# Install binary package
|
||||||
|
install -d debian/tmp
|
||||||
|
cp -a `ls | grep -v debian` debian/tmp
|
||||||
|
#
|
||||||
|
# If you need to move files around in debian/tmp or do some
|
||||||
|
# binary patching ... Insert it here
|
||||||
|
#
|
||||||
|
debstd
|
||||||
|
dpkg-gencontrol
|
||||||
|
dpkg --build debian/tmp ..
|
||||||
|
|
||||||
|
define checkdir
|
||||||
|
test -f debian/rules
|
||||||
|
endef
|
||||||
|
|
||||||
|
# Below here is fairly generic really
|
||||||
|
|
||||||
|
binary: binary-indep binary-arch
|
||||||
|
|
||||||
|
build: debian/build
|
||||||
|
|
||||||
|
source diff:
|
||||||
|
@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
|
||||||
|
|
||||||
|
checkroot:
|
||||||
|
$(checkdir)
|
||||||
|
test root = "`whoami`"
|
||||||
|
|
||||||
|
.PHONY: binary binary-arch binary-indep clean checkroot
|
||||||
9
lib/to-deb/slp/changelog
Normal file
9
lib/to-deb/slp/changelog
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
#NAME# (#VERSION#-#RELEASE#) unstable; urgency=low
|
||||||
|
|
||||||
|
* Converted from Stampede .slp binary format to debian
|
||||||
|
|
||||||
|
-- #USERNAME# <#EMAIL#> #DATE#
|
||||||
|
|
||||||
|
Local variables:
|
||||||
|
mode: debian-changelog
|
||||||
|
End:
|
||||||
10
lib/to-deb/slp/control
Normal file
10
lib/to-deb/slp/control
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
Source: #NAME#
|
||||||
|
Section: #SECTION#
|
||||||
|
Priority: extra
|
||||||
|
Maintainer: #USERNAME# <#EMAIL#>
|
||||||
|
|
||||||
|
Package: #NAME#
|
||||||
|
Architecture: #ARCH#
|
||||||
|
Depends: ${shlibs:Depends}
|
||||||
|
Description: #SUMMARY#
|
||||||
|
#DESCRIPTION#
|
||||||
4
lib/to-deb/slp/copyright
Normal file
4
lib/to-deb/slp/copyright
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
This package was debianized by the alien program by converting
|
||||||
|
a Stampede linux Package on #DATE#.
|
||||||
|
|
||||||
|
Copyright: #COPYRIGHT#
|
||||||
104
patches/apxeng_4.4.1-13.diff
Normal file
104
patches/apxeng_4.4.1-13.diff
Normal file
@@ -0,0 +1,104 @@
|
|||||||
|
--- apxeng-4.4.1.orig/debian/changelog
|
||||||
|
+++ apxeng-4.4.1/debian/changelog
|
||||||
|
@@ -0,0 +1,9 @@
|
||||||
|
+apxeng (4.4.1-14) unstable; urgency=low
|
||||||
|
+
|
||||||
|
+ * Converted from RPM binary format to debian
|
||||||
|
+
|
||||||
|
+ -- Joey Hess <joey@kitenet.net> Wed, 7 Apr 1999 20:26:33 -0700
|
||||||
|
+
|
||||||
|
+Local variables:
|
||||||
|
+mode: debian-changelog
|
||||||
|
+End:
|
||||||
|
--- apxeng-4.4.1.orig/debian/control
|
||||||
|
+++ apxeng-4.4.1/debian/control
|
||||||
|
@@ -0,0 +1,9 @@
|
||||||
|
+Source: apxeng
|
||||||
|
+Section: alien
|
||||||
|
+Priority: extra
|
||||||
|
+Maintainer: Joey Hess <joey@kitenet.net>
|
||||||
|
+
|
||||||
|
+Package: apxeng
|
||||||
|
+Architecture: i386
|
||||||
|
+Description: ApplixWare Office (english)
|
||||||
|
+ This package contains the english version of ApplixWare Office.
|
||||||
|
--- apxeng-4.4.1.orig/debian/copyright
|
||||||
|
+++ apxeng-4.4.1/debian/copyright
|
||||||
|
@@ -0,0 +1,21 @@
|
||||||
|
+This package was debianized by the alien program by converting
|
||||||
|
+a binary RPM Package on Wed, 7 Apr 1999 20:26:33 -0700.
|
||||||
|
+
|
||||||
|
+Copyright: 1990-1998 Applix, Inc.
|
||||||
|
+
|
||||||
|
+Information from the binary Package:
|
||||||
|
+Name : apxeng Distribution: SuSE Linux 6.0-BETA (i386)
|
||||||
|
+Version : 4.4.1 Vendor: SuSE GmbH, Nuernberg, Germany
|
||||||
|
+Release : 13 Build Date: Tue Dec 1 01:36:41 1998
|
||||||
|
+Install date: (not installed) Build Host: neumann.suse.de
|
||||||
|
+Group : unsorted Source RPM: axbase-4.4.1-13.src.rpm
|
||||||
|
+Size : 17025358 License: 1990-1998 Applix, Inc.
|
||||||
|
+Packager : feedback@suse.de
|
||||||
|
+Summary : ApplixWare Office (english)
|
||||||
|
+Description :
|
||||||
|
+This package contains the english version of ApplixWare Office.
|
||||||
|
+
|
||||||
|
+Authors:
|
||||||
|
+--------
|
||||||
|
+ Eric Ding <ericding@applix.com>
|
||||||
|
+
|
||||||
|
--- apxeng-4.4.1.orig/debian/rules
|
||||||
|
+++ apxeng-4.4.1/debian/rules
|
||||||
|
@@ -0,0 +1,53 @@
|
||||||
|
+#!/usr/bin/make -f
|
||||||
|
+# debian/rules that uses debhelper and alien
|
||||||
|
+# GNU copyright 1997 by Joey Hess.
|
||||||
|
+
|
||||||
|
+# Uncomment this to turn on verbose mode.
|
||||||
|
+#export DH_VERBOSE=1
|
||||||
|
+
|
||||||
|
+build:
|
||||||
|
+ dh_testdir
|
||||||
|
+ # Nothing to do.
|
||||||
|
+
|
||||||
|
+clean:
|
||||||
|
+ dh_testdir
|
||||||
|
+ dh_testroot
|
||||||
|
+ dh_clean
|
||||||
|
+
|
||||||
|
+# Build architecture-independent files here.
|
||||||
|
+binary-indep: build
|
||||||
|
+# We have nothing to do by default.
|
||||||
|
+
|
||||||
|
+# Build architecture-dependent files here.
|
||||||
|
+binary-arch: build
|
||||||
|
+# dh_testversion
|
||||||
|
+ dh_testdir
|
||||||
|
+ dh_testroot
|
||||||
|
+ dh_clean -k
|
||||||
|
+ dh_installdirs
|
||||||
|
+ install -d debian/tmp/usr/X11R6/lib/X11
|
||||||
|
+ cp -a opt/* debian/tmp/usr/X11R6/lib/X11
|
||||||
|
+ dh_installdocs
|
||||||
|
+ dh_installexamples
|
||||||
|
+ dh_installmenu
|
||||||
|
+# dh_installinit
|
||||||
|
+ dh_installcron
|
||||||
|
+# dh_installmanpages
|
||||||
|
+# dh_undocumented
|
||||||
|
+ dh_installchangelogs
|
||||||
|
+# dh_strip
|
||||||
|
+ dh_compress
|
||||||
|
+ dh_fixperms
|
||||||
|
+ dh_suidregister
|
||||||
|
+ dh_installdeb
|
||||||
|
+ -dh_shlibdeps
|
||||||
|
+ dh_gencontrol
|
||||||
|
+ dh_makeshlibs
|
||||||
|
+ dh_md5sums
|
||||||
|
+ dh_builddeb
|
||||||
|
+
|
||||||
|
+source diff:
|
||||||
|
+ @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
|
||||||
|
+
|
||||||
|
+binary: binary-indep binary-arch
|
||||||
|
+.PHONY: build clean binary-indep binary-arch binary
|
||||||
150
patches/axbase_4.4.1-13.diff
Normal file
150
patches/axbase_4.4.1-13.diff
Normal file
@@ -0,0 +1,150 @@
|
|||||||
|
--- axbase-4.4.1.orig/usr/X11R6/bin/applixware
|
||||||
|
+++ axbase-4.4.1/usr/X11R6/bin/applixware
|
||||||
|
@@ -6,7 +6,7 @@
|
||||||
|
#
|
||||||
|
|
||||||
|
DBROOT=/dev/null
|
||||||
|
-APPLIX=/opt/applix/applix
|
||||||
|
+APPLIX=/usr/X11R6/lib/X11/applix/applix
|
||||||
|
|
||||||
|
#
|
||||||
|
# embedded jre is buggy
|
||||||
|
@@ -29,8 +29,8 @@
|
||||||
|
#
|
||||||
|
if [ ! -e ~/.odbc.ini ]; then
|
||||||
|
echo "Copying .odbc.ini to $HOME"
|
||||||
|
- test -f /usr/doc/packages/axbase/.odbc.ini && \
|
||||||
|
- cp /usr/doc/packages/axbase/.odbc.ini ${HOME}/.odbc.ini
|
||||||
|
+ test -f /usr/doc/axbase/.odbc.ini && \
|
||||||
|
+ cp /usr/doc/axbase/.odbc.ini ${HOME}/.odbc.ini
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
--- axbase-4.4.1.orig/debian/changelog
|
||||||
|
+++ axbase-4.4.1/debian/changelog
|
||||||
|
@@ -0,0 +1,10 @@
|
||||||
|
+axbase (4.4.1-14) unstable; urgency=low
|
||||||
|
+
|
||||||
|
+ * Converted from RPM binary format to debian.
|
||||||
|
+ * Made it not use /opt at all.
|
||||||
|
+
|
||||||
|
+ -- Joey Hess <joey@kitenet.net> Wed, 7 Apr 1999 19:44:25 -0700
|
||||||
|
+
|
||||||
|
+Local variables:
|
||||||
|
+mode: debian-changelog
|
||||||
|
+End:
|
||||||
|
--- axbase-4.4.1.orig/debian/control
|
||||||
|
+++ axbase-4.4.1/debian/control
|
||||||
|
@@ -0,0 +1,12 @@
|
||||||
|
+Source: axbase
|
||||||
|
+Section: alien
|
||||||
|
+Priority: extra
|
||||||
|
+Maintainer: Joey Hess <joey@kitenet.net>
|
||||||
|
+
|
||||||
|
+Package: axbase
|
||||||
|
+Architecture: i386
|
||||||
|
+Depends: apxeng | apxgrm | apxfrn, axfont, ${shlibs:Depends}
|
||||||
|
+Description: base system of ApplixWare Office
|
||||||
|
+ This is the language independent part of ApplixWare Office for
|
||||||
|
+ linux. The language dependend part has to be installed in any
|
||||||
|
+ case. This package also contains Applix Builder and Applix Data.
|
||||||
|
--- axbase-4.4.1.orig/debian/copyright
|
||||||
|
+++ axbase-4.4.1/debian/copyright
|
||||||
|
@@ -0,0 +1,23 @@
|
||||||
|
+This package was debianized by the alien program by converting
|
||||||
|
+a binary RPM Package on Wed, 7 Apr 1999 19:44:25 -0700.
|
||||||
|
+
|
||||||
|
+Copyright: 1990-1998 Applix, Inc.
|
||||||
|
+
|
||||||
|
+Information from the binary Package:
|
||||||
|
+Name : axbase Distribution: SuSE Linux 6.0-BETA (i386)
|
||||||
|
+Version : 4.4.1 Vendor: SuSE GmbH, Nuernberg, Germany
|
||||||
|
+Release : 13 Build Date: Tue Dec 1 01:36:41 1998
|
||||||
|
+Install date: (not installed) Build Host: neumann.suse.de
|
||||||
|
+Group : unsorted Source RPM: axbase-4.4.1-13.src.rpm
|
||||||
|
+Size : 72974144 License: 1990-1998 Applix, Inc.
|
||||||
|
+Packager : feedback@suse.de
|
||||||
|
+Summary : base system of ApplixWare Office
|
||||||
|
+Description :
|
||||||
|
+This is the language independent part of ApplixWare Office for
|
||||||
|
+linux. The language dependend part has to be installed in any
|
||||||
|
+case. This package also contains Applix Builder and Applix Data.
|
||||||
|
+
|
||||||
|
+Authors:
|
||||||
|
+--------
|
||||||
|
+ Eric Ding <ericding@applix.com>
|
||||||
|
+
|
||||||
|
--- axbase-4.4.1.orig/debian/rules
|
||||||
|
+++ axbase-4.4.1/debian/rules
|
||||||
|
@@ -0,0 +1,57 @@
|
||||||
|
+#!/usr/bin/make -f
|
||||||
|
+# debian/rules that uses debhelper and alien
|
||||||
|
+# GNU copyright 1997 by Joey Hess.
|
||||||
|
+
|
||||||
|
+# Uncomment this to turn on verbose mode.
|
||||||
|
+#export DH_VERBOSE=1
|
||||||
|
+
|
||||||
|
+build:
|
||||||
|
+ dh_testdir
|
||||||
|
+ # Nothing to do.
|
||||||
|
+
|
||||||
|
+clean:
|
||||||
|
+ dh_testdir
|
||||||
|
+ dh_testroot
|
||||||
|
+ dh_clean
|
||||||
|
+
|
||||||
|
+# Build architecture-independent files here.
|
||||||
|
+binary-indep: build
|
||||||
|
+# We have nothing to do by default.
|
||||||
|
+
|
||||||
|
+# Build architecture-dependent files here.
|
||||||
|
+binary-arch: build
|
||||||
|
+# dh_testversion
|
||||||
|
+ dh_testdir
|
||||||
|
+ dh_testroot
|
||||||
|
+ dh_clean -k
|
||||||
|
+ dh_installdirs usr/X11R6/bin usr/X11R6/lib/X11
|
||||||
|
+ # Moving the files like this is a little nasty, but this way we
|
||||||
|
+ # need far less disk space to build the package..
|
||||||
|
+ mv opt/applix debian/tmp/usr/X11R6/lib/X11
|
||||||
|
+ cp -a usr/X11R6/bin/* debian/tmp/usr/X11R6/bin/
|
||||||
|
+ dh_installdocs usr/doc/packages/axbase/.*
|
||||||
|
+ dh_installexamples usr/doc/packages/axbase/contrib
|
||||||
|
+ dh_installmenu
|
||||||
|
+# dh_installinit
|
||||||
|
+ dh_installcron
|
||||||
|
+# dh_installmanpages
|
||||||
|
+# dh_undocumented
|
||||||
|
+ dh_installchangelogs
|
||||||
|
+# dh_strip
|
||||||
|
+ dh_compress
|
||||||
|
+ dh_fixperms
|
||||||
|
+ dh_suidregister
|
||||||
|
+ dh_installdeb
|
||||||
|
+ dh_shlibdeps
|
||||||
|
+ dh_gencontrol
|
||||||
|
+ dh_makeshlibs
|
||||||
|
+ dh_md5sums
|
||||||
|
+ dh_builddeb
|
||||||
|
+ # Undo the move.
|
||||||
|
+ mv debian/tmp/usr/X11R6/lib/X11/applix opt
|
||||||
|
+
|
||||||
|
+source diff:
|
||||||
|
+ @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
|
||||||
|
+
|
||||||
|
+binary: binary-indep binary-arch
|
||||||
|
+.PHONY: build clean binary-indep binary-arch binary
|
||||||
|
--- axbase-4.4.1.orig/debian/README.Debian
|
||||||
|
+++ axbase-4.4.1/debian/README.Debian
|
||||||
|
@@ -0,0 +1,7 @@
|
||||||
|
+This is a converted RPM package.
|
||||||
|
+
|
||||||
|
+I decided to move the files out of /opt, since debian doesn't have an /opt
|
||||||
|
+yet. If the applix manual talks about files in /opt, look in
|
||||||
|
+/usr/X11R6/lib/X11/applix, instead.
|
||||||
|
+
|
||||||
|
+-- Joey Hess
|
||||||
|
--- axbase-4.4.1.orig/debian/menu
|
||||||
|
+++ axbase-4.4.1/debian/menu
|
||||||
|
@@ -0,0 +1 @@
|
||||||
|
+?package(applix):needs="x11" section="Apps/Editors" title="Applixware" command="applixware"
|
||||||
114
patches/axfont_4.4.1-13.diff
Normal file
114
patches/axfont_4.4.1-13.diff
Normal file
@@ -0,0 +1,114 @@
|
|||||||
|
--- axfont-4.4.1.orig/debian/changelog
|
||||||
|
+++ axfont-4.4.1/debian/changelog
|
||||||
|
@@ -0,0 +1,9 @@
|
||||||
|
+axfont (4.4.1-14) unstable; urgency=low
|
||||||
|
+
|
||||||
|
+ * Converted from RPM binary format to debian.
|
||||||
|
+
|
||||||
|
+ -- Joey Hess <joey@kitenet.net> Wed, 7 Apr 1999 20:34:59 -0700
|
||||||
|
+
|
||||||
|
+Local variables:
|
||||||
|
+mode: debian-changelog
|
||||||
|
+End:
|
||||||
|
--- axfont-4.4.1.orig/debian/control
|
||||||
|
+++ axfont-4.4.1/debian/control
|
||||||
|
@@ -0,0 +1,10 @@
|
||||||
|
+Source: axfont
|
||||||
|
+Section: alien
|
||||||
|
+Priority: extra
|
||||||
|
+Maintainer: Joey Hess <joey@kitenet.net>
|
||||||
|
+
|
||||||
|
+Package: axfont
|
||||||
|
+Architecture: i386
|
||||||
|
+Depends: ${shlibs:Depends}
|
||||||
|
+Description: Applixware Fonts
|
||||||
|
+ This package contains the fonts for Applixware Office.
|
||||||
|
--- axfont-4.4.1.orig/debian/copyright
|
||||||
|
+++ axfont-4.4.1/debian/copyright
|
||||||
|
@@ -0,0 +1,21 @@
|
||||||
|
+This package was debianized by the alien program by converting
|
||||||
|
+a binary RPM Package on Wed, 7 Apr 1999 20:34:59 -0700.
|
||||||
|
+
|
||||||
|
+Copyright: 1990-1998 Applix, Inc.
|
||||||
|
+
|
||||||
|
+Information from the binary Package:
|
||||||
|
+Name : axfont Distribution: SuSE Linux 6.0-BETA (i386)
|
||||||
|
+Version : 4.4.1 Vendor: SuSE GmbH, Nuernberg, Germany
|
||||||
|
+Release : 13 Build Date: Tue Dec 1 01:36:41 1998
|
||||||
|
+Install date: (not installed) Build Host: neumann.suse.de
|
||||||
|
+Group : unsorted Source RPM: axbase-4.4.1-13.src.rpm
|
||||||
|
+Size : 17723034 License: 1990-1998 Applix, Inc.
|
||||||
|
+Packager : feedback@suse.de
|
||||||
|
+Summary : Applixware Fonts
|
||||||
|
+Description :
|
||||||
|
+This package contains the fonts for Applixware Office.
|
||||||
|
+
|
||||||
|
+Authors:
|
||||||
|
+--------
|
||||||
|
+ Eric Ding <ericding@applix.com>
|
||||||
|
+
|
||||||
|
--- axfont-4.4.1.orig/debian/rules
|
||||||
|
+++ axfont-4.4.1/debian/rules
|
||||||
|
@@ -0,0 +1,55 @@
|
||||||
|
+#!/usr/bin/make -f
|
||||||
|
+# debian/rules that uses debhelper and alien
|
||||||
|
+# GNU copyright 1997 by Joey Hess.
|
||||||
|
+
|
||||||
|
+# Uncomment this to turn on verbose mode.
|
||||||
|
+#export DH_VERBOSE=1
|
||||||
|
+
|
||||||
|
+build:
|
||||||
|
+ dh_testdir
|
||||||
|
+ # Nothing to do.
|
||||||
|
+
|
||||||
|
+clean:
|
||||||
|
+ dh_testdir
|
||||||
|
+ dh_testroot
|
||||||
|
+ dh_clean
|
||||||
|
+
|
||||||
|
+# Build architecture-independent files here.
|
||||||
|
+binary-indep: build
|
||||||
|
+# We have nothing to do by default.
|
||||||
|
+
|
||||||
|
+# Build architecture-dependent files here.
|
||||||
|
+binary-arch: build
|
||||||
|
+# dh_testversion
|
||||||
|
+ dh_testdir
|
||||||
|
+ dh_testroot
|
||||||
|
+ dh_clean -k
|
||||||
|
+ dh_installdirs
|
||||||
|
+ install -d debian/tmp/usr/X11R6/lib/X11
|
||||||
|
+ cp -a opt/* debian/tmp/usr/X11R6/lib/X11
|
||||||
|
+ # These cause applix to crash.
|
||||||
|
+ rm -rf debian/tmp/usr/X11R6/lib/X11/applix/axdata/fontmetrics/gallium
|
||||||
|
+ dh_installdocs
|
||||||
|
+ dh_installexamples
|
||||||
|
+ dh_installmenu
|
||||||
|
+# dh_installinit
|
||||||
|
+ dh_installcron
|
||||||
|
+# dh_installmanpages
|
||||||
|
+# dh_undocumented
|
||||||
|
+ dh_installchangelogs
|
||||||
|
+# dh_strip
|
||||||
|
+ dh_compress
|
||||||
|
+ dh_fixperms
|
||||||
|
+ dh_suidregister
|
||||||
|
+ dh_installdeb
|
||||||
|
+ -dh_shlibdeps
|
||||||
|
+ dh_gencontrol
|
||||||
|
+ dh_makeshlibs
|
||||||
|
+ dh_md5sums
|
||||||
|
+ dh_builddeb
|
||||||
|
+
|
||||||
|
+source diff:
|
||||||
|
+ @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
|
||||||
|
+
|
||||||
|
+binary: binary-indep binary-arch
|
||||||
|
+.PHONY: build clean binary-indep binary-arch binary
|
||||||
|
--- axfont-4.4.1.orig/debian/README.Debian
|
||||||
|
+++ axfont-4.4.1/debian/README.Debian
|
||||||
|
@@ -0,0 +1,4 @@
|
||||||
|
+Note that the truetype fonts have been removed from this package because
|
||||||
|
+they cause applix to crash for some reason.
|
||||||
|
+
|
||||||
|
+-- Joey Hess
|
||||||
107
patches/axlang_4.4.1-13.diff
Normal file
107
patches/axlang_4.4.1-13.diff
Normal file
@@ -0,0 +1,107 @@
|
|||||||
|
--- axlang-4.4.1.orig/debian/changelog
|
||||||
|
+++ axlang-4.4.1/debian/changelog
|
||||||
|
@@ -0,0 +1,9 @@
|
||||||
|
+axlang (4.4.1-14) unstable; urgency=low
|
||||||
|
+
|
||||||
|
+ * Converted from RPM binary format to debian
|
||||||
|
+
|
||||||
|
+ -- Joey Hess <joey@kitenet.net> Wed, 7 Apr 1999 21:55:48 -0700
|
||||||
|
+
|
||||||
|
+Local variables:
|
||||||
|
+mode: debian-changelog
|
||||||
|
+End:
|
||||||
|
--- axlang-4.4.1.orig/debian/control
|
||||||
|
+++ axlang-4.4.1/debian/control
|
||||||
|
@@ -0,0 +1,11 @@
|
||||||
|
+Source: axlang
|
||||||
|
+Section: alien
|
||||||
|
+Priority: extra
|
||||||
|
+Maintainer: Joey Hess <joey@kitenet.net>
|
||||||
|
+
|
||||||
|
+Package: axlang
|
||||||
|
+Architecture: i386
|
||||||
|
+Depends: ${shlibs:Depends}
|
||||||
|
+Description: Thesaurus and spell-checker for ApplixWare Office
|
||||||
|
+ This package contains the spell-checker as well as a thesaurus for
|
||||||
|
+ ApplixWare Office for Linux.
|
||||||
|
--- axlang-4.4.1.orig/debian/copyright
|
||||||
|
+++ axlang-4.4.1/debian/copyright
|
||||||
|
@@ -0,0 +1,22 @@
|
||||||
|
+This package was debianized by the alien program by converting
|
||||||
|
+a binary RPM Package on Wed, 7 Apr 1999 21:55:48 -0700.
|
||||||
|
+
|
||||||
|
+Copyright: 1990-1998 Applix, Inc.
|
||||||
|
+
|
||||||
|
+Information from the binary Package:
|
||||||
|
+Name : axlang Distribution: SuSE Linux 6.0-BETA (i386)
|
||||||
|
+Version : 4.4.1 Vendor: SuSE GmbH, Nuernberg, Germany
|
||||||
|
+Release : 13 Build Date: Tue Dec 1 01:36:41 1998
|
||||||
|
+Install date: (not installed) Build Host: neumann.suse.de
|
||||||
|
+Group : unsorted Source RPM: axbase-4.4.1-13.src.rpm
|
||||||
|
+Size : 20793103 License: 1990-1998 Applix, Inc.
|
||||||
|
+Packager : feedback@suse.de
|
||||||
|
+Summary : Thesaurus and spell-checker for ApplixWare Office
|
||||||
|
+Description :
|
||||||
|
+This package contains the spell-checker as well as a thesaurus for
|
||||||
|
+ApplixWare Office for Linux.
|
||||||
|
+
|
||||||
|
+Authors:
|
||||||
|
+--------
|
||||||
|
+ Eric Ding <ericding@applix.com>
|
||||||
|
+
|
||||||
|
--- axlang-4.4.1.orig/debian/rules
|
||||||
|
+++ axlang-4.4.1/debian/rules
|
||||||
|
@@ -0,0 +1,53 @@
|
||||||
|
+#!/usr/bin/make -f
|
||||||
|
+# debian/rules that uses debhelper and alien
|
||||||
|
+# GNU copyright 1997 by Joey Hess.
|
||||||
|
+
|
||||||
|
+# Uncomment this to turn on verbose mode.
|
||||||
|
+#export DH_VERBOSE=1
|
||||||
|
+
|
||||||
|
+build:
|
||||||
|
+ dh_testdir
|
||||||
|
+ # Nothing to do.
|
||||||
|
+
|
||||||
|
+clean:
|
||||||
|
+ dh_testdir
|
||||||
|
+ dh_testroot
|
||||||
|
+ dh_clean
|
||||||
|
+
|
||||||
|
+# Build architecture-independent files here.
|
||||||
|
+binary-indep: build
|
||||||
|
+# We have nothing to do by default.
|
||||||
|
+
|
||||||
|
+# Build architecture-dependent files here.
|
||||||
|
+binary-arch: build
|
||||||
|
+# dh_testversion
|
||||||
|
+ dh_testdir
|
||||||
|
+ dh_testroot
|
||||||
|
+ dh_clean -k
|
||||||
|
+ dh_installdirs
|
||||||
|
+ install -d debian/tmp/usr/X11R6/lib/X11
|
||||||
|
+ cp -a opt/* debian/tmp/usr/X11R6/lib/X11
|
||||||
|
+ dh_installdocs
|
||||||
|
+ dh_installexamples
|
||||||
|
+ dh_installmenu
|
||||||
|
+# dh_installinit
|
||||||
|
+ dh_installcron
|
||||||
|
+# dh_installmanpages
|
||||||
|
+# dh_undocumented
|
||||||
|
+ dh_installchangelogs
|
||||||
|
+# dh_strip
|
||||||
|
+ dh_compress
|
||||||
|
+ dh_fixperms
|
||||||
|
+ dh_suidregister
|
||||||
|
+ dh_installdeb
|
||||||
|
+ -dh_shlibdeps
|
||||||
|
+ dh_gencontrol
|
||||||
|
+ dh_makeshlibs
|
||||||
|
+ dh_md5sums
|
||||||
|
+ dh_builddeb
|
||||||
|
+
|
||||||
|
+source diff:
|
||||||
|
+ @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
|
||||||
|
+
|
||||||
|
+binary: binary-indep binary-arch
|
||||||
|
+.PHONY: build clean binary-indep binary-arch binary
|
||||||
636
patches/xbf-i740-glibc_1.0.0-3.diff
Normal file
636
patches/xbf-i740-glibc_1.0.0-3.diff
Normal file
@@ -0,0 +1,636 @@
|
|||||||
|
--- xbf-i740-glibc-1.0.0.orig/usr/doc/XBF-i740-glibc-1.0.0/README.i740
|
||||||
|
+++ xbf-i740-glibc-1.0.0/usr/doc/XBF-i740-glibc-1.0.0/README.i740
|
||||||
|
@@ -0,0 +1,313 @@
|
||||||
|
+ XBF_i740, Version 1.0.0, 21 December 1998
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+This FREE (see the license below) full featured X Server contains:
|
||||||
|
+
|
||||||
|
+ * Full support for 8, 15, 16, 24 and 32 bit per pixel depths.
|
||||||
|
+ * Hardware cursor support to reduce sprite flicker.
|
||||||
|
+ * Hardware accelerated 2D drawing engine support for 8, 15, 16 and 24
|
||||||
|
+ bit per pixel depths.
|
||||||
|
+ * Support for high resolution video modes up to 1600x1200.
|
||||||
|
+ * Support for doublescan video modes (e.g., 320x200 and 320x240).
|
||||||
|
+ * Support for gamma correction at all pixel depths.
|
||||||
|
+ * Fully programmable clock supported.
|
||||||
|
+ * Robust text mode restore for VT switching.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+Tested Video Cards
|
||||||
|
+
|
||||||
|
+ * Real3D Starfighter AGP
|
||||||
|
+ * Diamond Stealth II/G460 AGP
|
||||||
|
+
|
||||||
|
+Reported Working Video Cards:
|
||||||
|
+
|
||||||
|
+ * 3DVision-i740 AGP
|
||||||
|
+ * ABIT G740 8MB SDRAM
|
||||||
|
+ * AGP 2D/3D V. 1N, AGP-740D
|
||||||
|
+ * ARISTO i740 AGP (ART-i740-G)
|
||||||
|
+ * ASUS AGP-V2740
|
||||||
|
+ * Chaintech AGP-740D
|
||||||
|
+ * EliteGroup(ECS) 3DVision-i740 AGP
|
||||||
|
+ * EONtronics Picasso 740
|
||||||
|
+ * EONtronics Van Gogh
|
||||||
|
+ * Everex MVGA i740/AG
|
||||||
|
+ * Flagpoint Shocker i740 8MB
|
||||||
|
+ * Gainward CardExpert 740 8MB
|
||||||
|
+ * Gigabyte Predator i740 8MB AGP
|
||||||
|
+ * Hercules Terminator 128 2X/i AGP
|
||||||
|
+ * Intel Express 3D AGP
|
||||||
|
+ * Jaton Video-740 AGP 3D
|
||||||
|
+ * Joymedia Apollo 7400
|
||||||
|
+ * Leadtek Winfast S900
|
||||||
|
+ * Machspeed Raptor i740 AGP 4600
|
||||||
|
+ * Magic-Pro MP-740DVD
|
||||||
|
+ * MAXI Gamer AGP 8 MB
|
||||||
|
+ * Palit Daytona AGP740
|
||||||
|
+ * QDI Amazing I
|
||||||
|
+ * Soyo AGP (SY-740 AGP)
|
||||||
|
+ * VideoExcel AGP 740
|
||||||
|
+ * ViewTop ZeusL 8MB
|
||||||
|
+ * Winfast S900 i740 AGP 8MB
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+CAUTION: Running this server on untested video cards poses a potential
|
||||||
|
+risk of damaging your video card and display. You assume all risks in
|
||||||
|
+using this X server on untested video cards; however, if you
|
||||||
|
+successfully run this server on a video card not listed here, we would
|
||||||
|
+like to hear from you. Please e-mail your video card make and model
|
||||||
|
+to us at "xbf_support@redhat.com".
|
||||||
|
+
|
||||||
|
+Red Hat and Precision Insight, Inc. disclaim all warranties with
|
||||||
|
+regard to this X server. In no event shall Red Hat or Precision
|
||||||
|
+Insight, Inc. be liable for any damages whatsoever resulting from the
|
||||||
|
+use of this X server.
|
||||||
|
+
|
||||||
|
+This commercial quality X Server has been tested with only the Real3D
|
||||||
|
+Starfighter AGP and the Diamond Stealth II/G460 AGP card at this time.
|
||||||
|
+
|
||||||
|
+This Free server is distributed in binary form only to conform with
|
||||||
|
+the Non Disclosure Agreement required by Intel. If and when this non
|
||||||
|
+disclosure requirement is removed by Intel, all of the source code for
|
||||||
|
+this driver will be contributed to the XFree86 project.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+Download and Installation Instructions
|
||||||
|
+
|
||||||
|
+Although you can place the downloaded .rpm file in any directory of
|
||||||
|
+your choosing, we suggest you ftp the file into the /tmp directory and
|
||||||
|
+then execute the appropriate RPM command from that directory to
|
||||||
|
+install the .rpm file. When the RPM command runs, it will
|
||||||
|
+automatically place the component files of the X Server into the
|
||||||
|
+correct locations in your system.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+Red Hat 5.x (glibc) systems:-
|
||||||
|
+ 1) get the file to your system
|
||||||
|
+ cd /tmp
|
||||||
|
+ ftp://ftp.redhat.com/pub/XBF/XBF-i740-glibc-1.0.0-1.i386.rpm
|
||||||
|
+ 2) install the files using RPM
|
||||||
|
+ rpm -ivh XBF-i740-glibc-1.0.0-1.i386.rpm
|
||||||
|
+ 3) after installing, run (as root):
|
||||||
|
+ ln -sf /usr/X11R6/bin/XBF_i740 /etc/X11/X
|
||||||
|
+
|
||||||
|
+Red Hat 4.x (libc5 systems):-
|
||||||
|
+ 1) get the file to your system
|
||||||
|
+ cd /tmp
|
||||||
|
+ ftp://ftp.redhat.com/pub/XBF/XBF-i740-libc5-1.0.0-1.i386.rpm
|
||||||
|
+ 2) install the files using RPM
|
||||||
|
+ rpm -ivh XBF-i740-libc5-1.0.0-1.i386.rpm
|
||||||
|
+ 3) after installing, run (as root):
|
||||||
|
+ ln -sf /usr/X11R6/bin/XBF_i740 /etc/X11/X
|
||||||
|
+ chmod 4711 /usr/X11R6/bin/XBF_i740
|
||||||
|
+
|
||||||
|
+IMPORTANT NOTE:
|
||||||
|
+
|
||||||
|
+After installing the X server, an XF86Config file needs to be set up
|
||||||
|
+for your computer. For Red Hat 4.x and 5.x systems, this file is in
|
||||||
|
+"/etc/X11/XF86Config". See the manual page for XF86Config for more
|
||||||
|
+information on how to properly setup this file for your computer. For
|
||||||
|
+a description of the supported device configuration options, see the
|
||||||
|
+README file included in this release.
|
||||||
|
+
|
||||||
|
+To ease the setting up of the XF86Config file, a new "xf86config"
|
||||||
|
+program that has support for the XBF_i740 X server can be found in the
|
||||||
|
+same directory as the X server. To use this program:
|
||||||
|
+
|
||||||
|
+Red Hat 5.x (glibc) systems:-
|
||||||
|
+ 1) get the file to your system
|
||||||
|
+ cd /tmp
|
||||||
|
+ ftp://ftp.redhat.com/pub/XBF/xf86config-glibc-1.0.0.i386.tgz
|
||||||
|
+ 2) install the files (as root):
|
||||||
|
+ cd /
|
||||||
|
+ tar xvzf /tmp/xf86config-glibc-1.0.0.i386.tgz
|
||||||
|
+ 3) run "xf86config" as root
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+Red Hat 4.x (libc5 systems):-
|
||||||
|
+ 1) get the file to your system
|
||||||
|
+ cd /tmp
|
||||||
|
+ ftp://ftp.redhat.com/pub/XBF/xf86config-libc5-1.0.0.i386.tgz
|
||||||
|
+ 2) install the files (as root):
|
||||||
|
+ cd /
|
||||||
|
+ tar xvzf /tmp/xf86config-libc5-1.0.0.i386.tgz
|
||||||
|
+ 3) run "xf86config" as root
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+Here are some hints as to how to use xf86config:
|
||||||
|
+
|
||||||
|
+1) While running xf86config, you will need to answer several questions
|
||||||
|
+ about your mouse, monitor and video card. This information should
|
||||||
|
+ be found in the manuals that came with your system.
|
||||||
|
+
|
||||||
|
+2) When you reach the section to choose a particular video card,
|
||||||
|
+ xf86config will ask you:
|
||||||
|
+
|
||||||
|
+ Do you want to look at the card database?
|
||||||
|
+
|
||||||
|
+ Answer, "yes" and choose the number of the video card that most
|
||||||
|
+ closely matches your system. The cards that have been tested or
|
||||||
|
+ have been reported to work (see above) are included in this list.
|
||||||
|
+
|
||||||
|
+3) Next, xf86config will ask you:
|
||||||
|
+
|
||||||
|
+ Which one of these screen types do you intend to run by default (1-5)?
|
||||||
|
+
|
||||||
|
+ Answer, "5" since that is the one that corresponds to the card
|
||||||
|
+ definition you just choose (from hint #2, above).
|
||||||
|
+
|
||||||
|
+4) Since you have already set the symbolic link (above), you do not
|
||||||
|
+ want xf86config to set it again, so answer "no" to this question.
|
||||||
|
+
|
||||||
|
+5) No special RAMDAC is needed with the XBF_i740 X server, so when
|
||||||
|
+ xf86config asks you to choose a RAMDAC, you can enter "q" to safely
|
||||||
|
+ quit without selecting a RAMDAC.
|
||||||
|
+
|
||||||
|
+6) No special Clockchip setting is required with the XBF_i740 X
|
||||||
|
+ server, so you can simply press Enter, when xf86config asks you
|
||||||
|
+ what Clockchip setting you want.
|
||||||
|
+
|
||||||
|
+7) It is not necessary to probe the clocks with the XBF_i740 X server,
|
||||||
|
+ so you do not need to have xf86config run 'X -probeonly'.
|
||||||
|
+
|
||||||
|
+8) For RedHat 4.x and RedHat 5.x systems, the XF86Config file should
|
||||||
|
+ be written to /etc/X11/XF86Config. For other systems, it should be
|
||||||
|
+ written to /etc/XF86Config.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+If you have any questions or problems with this X server:
|
||||||
|
+
|
||||||
|
+PLEASE CHECK THE FAQ AT http://www.precisioninsight.com/faq.html BEFORE
|
||||||
|
+SENDING EMAIL TO THE SUPPORT EMAIL ADDRESS
|
||||||
|
+
|
||||||
|
+If the FAQ does not help you solve the problem, you may send email to
|
||||||
|
+"xbf_support@redhat.com". Please do NOT send any email to XFree86
|
||||||
|
+regarding this X server.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+Please note that this software is released under the XBF License below.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+End User License Agreement for the XBF X server ("Software")
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+I. PREAMBLE
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+This License Agreement ("License") sets forth the terms and conditions
|
||||||
|
+under which Red Hat Software, Inc. grants you certain rights and
|
||||||
|
+licenses with respect to the Software. Please review this agreement
|
||||||
|
+carefully before you use the Software or install it on a computer.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+This License generally allows you to copy, sublicense and distribute
|
||||||
|
+the Software, subject to the following terms and conditions. However,
|
||||||
|
+nothing in this License grants you any right, license or interest with
|
||||||
|
+respect to the source code for the Software.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+II. GRANT OF RIGHTS:
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+A. The rights stated in this License are non-exclusive and are granted
|
||||||
|
+to you without fee.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+B. You may install and/or use the Software on as many computers as you
|
||||||
|
+wish at any time.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+C. You may copy, sublicense and distribute the Software in its entirety
|
||||||
|
+provided that you:
|
||||||
|
+
|
||||||
|
+1. Conspicuously publish on each copy of the Software the appropriate
|
||||||
|
+copyright notice and the complete terms and conditions of this License;
|
||||||
|
+
|
||||||
|
+2. Keep intact all notices that refer to this License and to the
|
||||||
|
+absence of any warranty; and
|
||||||
|
+
|
||||||
|
+3. Give any other recipients and sublicensees of the Software a copy of
|
||||||
|
+this License along with the Software, and make it clear to any and all
|
||||||
|
+recipients and sublicensees that the terms and conditions of this
|
||||||
|
+License shall govern their use of the Software.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+D. You may, but are not required to, charge a fee to persons to whom
|
||||||
|
+you copy and redistribute the Software, and you may at your option
|
||||||
|
+offer warranty protection for a fee to any person to whom you
|
||||||
|
+distribute the Software. Each person or entity to whom you sublicense
|
||||||
|
+the Software must receive it under no more restrictive terms and
|
||||||
|
+conditions than set forth in this License.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+III. YOU MAY NOT:
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+A. Modify, decompile, reverse assemble or otherwise reverse engineer
|
||||||
|
+the Software, or create derivative works based on the Software, or
|
||||||
|
+authorize any third party to do any of the above; and
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+B. Copy, sublicense, or distribute the Software except as expressly
|
||||||
|
+permitted in this License. Any attempt to copy, sublicense or
|
||||||
|
+distribute the Program in a manner inconsistent with this License is
|
||||||
|
+void, and will automatically terminate your rights under this License.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+IV. TITLE
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+The Software is protected by copyright and other laws. Title,
|
||||||
|
+ownership rights, and intellectual property rights in the Software
|
||||||
|
+shall remain with Red Hat Software, Inc. and/or its suppliers. You
|
||||||
|
+acknowledge these ownership and intellectual property rights, and agree
|
||||||
|
+not to take any action to jeopardize or infringe upon any of these
|
||||||
|
+rights with respect to the Software. The rights granted to you in this
|
||||||
|
+License do not include any interest in any intellectual property rights
|
||||||
|
+in the Software.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+V. NO WARRANTY
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+THERE IS NO WARRANTY FOR THE SOFTWARE, TO THE EXTENT PERMITTED BY
|
||||||
|
+APPLICABLE LAW. EXCEPT AS OTHERWISE STATED IN WRITING, THE SOFTWARE IS
|
||||||
|
+PROVIDED AND LICENSED "AS IS" WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
+IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||||
|
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+VI. LIMITATION OF LIABILITY
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT WILL RED
|
||||||
|
+HAT SOFTWARE, INC. OR ITS SUPPLIERS BE LIABLE TO YOU FOR ANY DAMAGES,
|
||||||
|
+INCLUDING LOST PROFITS, LOST SAVINGS, OR OTHER INCIDENTAL OR
|
||||||
|
+CONSEQUENTIAL DAMAGES, ARISING OUT OF THE USE OR INABILITY TO USE THE
|
||||||
|
+SOFTWARE, EVEN IF RED HAT SOFTWARE, INC. OR A DEALER AUTHORIZED BY RED
|
||||||
|
+HAT SOFTWARE, INC. HAD BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+VII. GENERAL
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+This License represents the complete agreement concerning the rights
|
||||||
|
+granted in this License, and may be amended only in a writing signed by
|
||||||
|
+both parties. If any provision of this Agreement is held to be
|
||||||
|
+unenforceable, the enforceability of the remaining provisions shall in
|
||||||
|
+no way be affected or impaired. This Agreement shall be governed by
|
||||||
|
+the laws of the United States.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+Copyright © 1998 Red Hat Software, Inc. All rights reserved.
|
||||||
|
--- xbf-i740-glibc-1.0.0.orig/debian/changelog
|
||||||
|
+++ xbf-i740-glibc-1.0.0/debian/changelog
|
||||||
|
@@ -0,0 +1,19 @@
|
||||||
|
+xbf-i740-glibc (1.0.0-3) unstable; urgency=low
|
||||||
|
+
|
||||||
|
+ * Added README.i740 from redhat mirror to the doc directory
|
||||||
|
+ * debian/rules: Modified doc directory from XBF-i740-glibc-VERSION to xbf-i740-glibc
|
||||||
|
+ * Added [pre|post][inst|rm] shamelessly borrowed from xserver-svga
|
||||||
|
+
|
||||||
|
+ -- Agustín Martín Domingo <agmartin@aq.upm.es> Thu, 15 Apr 1999 16:36:31 +0200
|
||||||
|
+
|
||||||
|
+xbf-i740-glibc (1.0.0-2) unstable; urgency=low
|
||||||
|
+
|
||||||
|
+ * Converted from RPM binary format to debian
|
||||||
|
+
|
||||||
|
+ -- Agustín Martín Domingo <agmartin@aq.upm.es> Thu, 15 Apr 1999 15:47:07 +0200
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+Local variables:
|
||||||
|
+mode: debian-changelog
|
||||||
|
+End:
|
||||||
|
--- xbf-i740-glibc-1.0.0.orig/debian/control
|
||||||
|
+++ xbf-i740-glibc-1.0.0/debian/control
|
||||||
|
@@ -0,0 +1,16 @@
|
||||||
|
+Source: xbf-i740-glibc
|
||||||
|
+Section: alien
|
||||||
|
+Priority: extra
|
||||||
|
+Maintainer: Agustín Martín Domingo <agmartin@aq.upm.es>
|
||||||
|
+
|
||||||
|
+Package: xbf-i740-glibc
|
||||||
|
+Architecture: i386
|
||||||
|
+Recommends: xf86config-i740g
|
||||||
|
+Provides: xserver
|
||||||
|
+Depends: ${shlibs:Depends}
|
||||||
|
+Description: Binary-only X server for i740 on glibc systems
|
||||||
|
+ X server for the Intel i740 base graphics cards.
|
||||||
|
+ .
|
||||||
|
+ Details on installing this server are available at
|
||||||
|
+ /usr/doc/xbf-i740-glibc (From ftp://ftp.redhat.com/pub/XBF/README.i740)
|
||||||
|
+
|
||||||
|
--- xbf-i740-glibc-1.0.0.orig/debian/copyright
|
||||||
|
+++ xbf-i740-glibc-1.0.0/debian/copyright
|
||||||
|
@@ -0,0 +1,19 @@
|
||||||
|
+This package was debianized by the alien program by converting
|
||||||
|
+a binary RPM Package on Thu, 15 Apr 1999 15:47:07 +0200.
|
||||||
|
+
|
||||||
|
+Copyright: XBF
|
||||||
|
+
|
||||||
|
+Information from the binary Package:
|
||||||
|
+Name : XBF-i740-glibc Distribution: (none)
|
||||||
|
+Version : 1.0.0 Vendor: (none)
|
||||||
|
+Release : 1 Build Date: Sun Dec 20 02:12:52 1998
|
||||||
|
+Install date: (not installed) Build Host: audrey.kem.org
|
||||||
|
+Group : X11/XFree86/Servers Source RPM: XBF-i740-glibc-1.0.0-1.src.rpm
|
||||||
|
+Size : 2136768
|
||||||
|
+Summary : Binary-only X server for i740 on glibc systems
|
||||||
|
+Description :
|
||||||
|
+X server for the Intel i740 base graphics cards.
|
||||||
|
+
|
||||||
|
+Details on installing this server are available at
|
||||||
|
+ftp://ftp.redhat.com/pub/XBF/README.i740
|
||||||
|
+
|
||||||
|
--- xbf-i740-glibc-1.0.0.orig/debian/rules
|
||||||
|
+++ xbf-i740-glibc-1.0.0/debian/rules
|
||||||
|
@@ -0,0 +1,58 @@
|
||||||
|
+#!/usr/bin/make -f
|
||||||
|
+# debian/rules that uses debhelper and alien
|
||||||
|
+# GNU copyright 1997 by Joey Hess.
|
||||||
|
+
|
||||||
|
+# Uncomment this to turn on verbose mode.
|
||||||
|
+#export DH_VERBOSE=1
|
||||||
|
+
|
||||||
|
+build:
|
||||||
|
+ dh_testdir
|
||||||
|
+ # Nothing to do.
|
||||||
|
+
|
||||||
|
+clean:
|
||||||
|
+ dh_testdir
|
||||||
|
+ dh_testroot
|
||||||
|
+ dh_clean
|
||||||
|
+
|
||||||
|
+# Build architecture-independent files here.
|
||||||
|
+binary-indep: build
|
||||||
|
+# We have nothing to do by default.
|
||||||
|
+
|
||||||
|
+# Build architecture-dependent files here.
|
||||||
|
+binary-arch: build
|
||||||
|
+# dh_testversion
|
||||||
|
+ dh_testdir
|
||||||
|
+ dh_testroot
|
||||||
|
+ dh_clean -k
|
||||||
|
+ dh_installdirs
|
||||||
|
+ install -d debian/tmp
|
||||||
|
+ cp -a `ls |grep -v debian` debian/tmp
|
||||||
|
+#
|
||||||
|
+# If you need to move files around in debian/tmp or do some
|
||||||
|
+# binary patching ... Insert it here
|
||||||
|
+#
|
||||||
|
+ ( cd `pwd`/debian/tmp/usr/doc ; mv XBF* xbf-i740-glibc )
|
||||||
|
+ dh_installdocs
|
||||||
|
+ dh_installexamples
|
||||||
|
+ dh_installmenu
|
||||||
|
+# dh_installinit
|
||||||
|
+ dh_installcron
|
||||||
|
+ dh_installmanpages
|
||||||
|
+# dh_undocumented
|
||||||
|
+ dh_installchangelogs
|
||||||
|
+# dh_strip
|
||||||
|
+ dh_compress
|
||||||
|
+ dh_fixperms
|
||||||
|
+ dh_suidregister
|
||||||
|
+ dh_installdeb
|
||||||
|
+ dh_shlibdeps
|
||||||
|
+ dh_gencontrol
|
||||||
|
+ dh_makeshlibs
|
||||||
|
+ dh_md5sums
|
||||||
|
+ dh_builddeb
|
||||||
|
+
|
||||||
|
+source diff:
|
||||||
|
+ @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
|
||||||
|
+
|
||||||
|
+binary: binary-indep binary-arch
|
||||||
|
+.PHONY: build clean binary-indep binary-arch binary
|
||||||
|
--- xbf-i740-glibc-1.0.0.orig/debian/preinst
|
||||||
|
+++ xbf-i740-glibc-1.0.0/debian/preinst
|
||||||
|
@@ -0,0 +1,34 @@
|
||||||
|
+#!/bin/sh
|
||||||
|
+# Debian xserver-xserver-i740 package pre-installation script
|
||||||
|
+# Modifications to the original xserver-svga preinst script
|
||||||
|
+# Copyright 1999 A. Martín. Licensed under the GNU GPL.
|
||||||
|
+# (Very) Mostly from
|
||||||
|
+# Debian xserver-svga package pre-installation script
|
||||||
|
+# Copyright 1998 Branden Robinson. Licensed under the GNU GPL.
|
||||||
|
+# Acknowlegements to Stephen Early, Mark Eichin, and Manoj Srivastava.
|
||||||
|
+
|
||||||
|
+set -e
|
||||||
|
+
|
||||||
|
+trap "echo ;\
|
||||||
|
+ echo 'Received signal. Aborting installation of xserver-xserver-i740 package.' ;\
|
||||||
|
+ echo ;\
|
||||||
|
+ exit 1" 1 2 3 15
|
||||||
|
+
|
||||||
|
+package=xbf-i740-glibc
|
||||||
|
+
|
||||||
|
+case "$1" in
|
||||||
|
+ install) touch /etc/X11/newxserver.$package ;;
|
||||||
|
+ upgrade) ;;
|
||||||
|
+ abort-upgrade) exit 0 ;;
|
||||||
|
+ *)
|
||||||
|
+ echo "ERROR: xserver-xserver-i740 preinst called with unknown argument \"$1\"."
|
||||||
|
+ echo "Aborting installation of xserver-xserver-i740 package."
|
||||||
|
+ exit 1 ;;
|
||||||
|
+esac
|
||||||
|
+
|
||||||
|
+# clean up a mess made in 3.3.2.2-4
|
||||||
|
+if [ "$2" = "3.3.2.2-4" ]; then
|
||||||
|
+ rm -f /etc/X11/newxserver.[0-9A-Z]*
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+exit
|
||||||
|
--- xbf-i740-glibc-1.0.0.orig/debian/postinst
|
||||||
|
+++ xbf-i740-glibc-1.0.0/debian/postinst
|
||||||
|
@@ -0,0 +1,119 @@
|
||||||
|
+#!/bin/sh
|
||||||
|
+# Debian xserver-xserver-i740 package post-installation script
|
||||||
|
+# Modifications to the original xserver-svga preinst script
|
||||||
|
+# Copyright 1999 A. Martín. Licensed under the GNU GPL.
|
||||||
|
+# (Very) Mostly from
|
||||||
|
+# Debian xserver-svga package post-installation script
|
||||||
|
+# Copyright 1998 Branden Robinson. Licensed under the GNU GPL.
|
||||||
|
+# Acknowlegements to Stephen Early, Mark Eichin, and Manoj Srivastava.
|
||||||
|
+
|
||||||
|
+set -e
|
||||||
|
+
|
||||||
|
+package=xbf-i740-glibc
|
||||||
|
+xserver=i740
|
||||||
|
+serverbin=XBF_i740
|
||||||
|
+
|
||||||
|
+cleanup () {
|
||||||
|
+ # unroll changes in xserver-i740 preinst
|
||||||
|
+ for file in /etc/X11/newxserver.$package; do
|
||||||
|
+ if [ -e $file ]; then
|
||||||
|
+ rm $file
|
||||||
|
+ fi
|
||||||
|
+ done;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+trap "echo ;\
|
||||||
|
+ echo 'Received signal. Aborting configuration of xserver-i740 package.' ;\
|
||||||
|
+ echo -n 'Cleaning up...' ;\
|
||||||
|
+ cleanup ;\
|
||||||
|
+ echo 'done.' ;\
|
||||||
|
+ echo ;\
|
||||||
|
+ exit 1" 1 2 3 15
|
||||||
|
+
|
||||||
|
+case "$1" in
|
||||||
|
+ configure) ;;
|
||||||
|
+ abort-upgrade|abort-remove|abort-deconfigure)
|
||||||
|
+ cleanup
|
||||||
|
+ exit 0 ;;
|
||||||
|
+ *)
|
||||||
|
+ echo "ERROR: xserver-i740 postinst called with unknown argument \"$1\"."
|
||||||
|
+ echo "Aborting configuration of xserver-i740 package."
|
||||||
|
+ echo -n "Cleaning up..."
|
||||||
|
+ cleanup
|
||||||
|
+ echo "done."
|
||||||
|
+ exit 1 ;;
|
||||||
|
+esac
|
||||||
|
+
|
||||||
|
+# I know there is redundant logic in some of the following, I'll rewrite it
|
||||||
|
+# pretty someday
|
||||||
|
+
|
||||||
|
+# while I'm at it, switch to string variables instead of numeric ones
|
||||||
|
+
|
||||||
|
+fixname=0
|
||||||
|
+prompt=0
|
||||||
|
+oldxserverpresent=0
|
||||||
|
+oldxserver=`head -1 /etc/X11/Xserver`
|
||||||
|
+servername=`echo $oldxserver | sed 's/X11R6\/bin/bin\/X11/'`
|
||||||
|
+if [ -x $oldxserver ]; then
|
||||||
|
+ oldxserverpresent=1
|
||||||
|
+fi
|
||||||
|
+if [ $oldxserverpresent = 1 ]; then
|
||||||
|
+ # case 1: we're just upgrading the existing server
|
||||||
|
+ if [ "$oldxserver" = "/usr/bin/X11/$serverbin" ]; then
|
||||||
|
+ prompt=0
|
||||||
|
+ # case 2: we're just upgrading, but need to canonicalize the pathname
|
||||||
|
+ elif [ "$servername" = "/usr/bin/X11/$serverbin" ]; then
|
||||||
|
+ fixname=1
|
||||||
|
+ # case 3: we're installing a new X server
|
||||||
|
+ elif [ -e /etc/X11/newxserver.$package ]; then
|
||||||
|
+ rm /etc/X11/newxserver.$package
|
||||||
|
+ prompt=1
|
||||||
|
+ $condecho
|
||||||
|
+ echo "Current default X server $oldxserver found."
|
||||||
|
+ echo -n "Do you want to make $xserver the default instead? (y/n) [n] "
|
||||||
|
+ default=n
|
||||||
|
+ # case 4: we're upgrading an alternative X server already installed
|
||||||
|
+ else
|
||||||
|
+ prompt=0
|
||||||
|
+ fi
|
||||||
|
+else # old server not present
|
||||||
|
+ prompt=1
|
||||||
|
+ $condecho
|
||||||
|
+ echo -n "No default X server previously set, or previous default has been "
|
||||||
|
+ echo "removed."
|
||||||
|
+ echo -n "Do you want to make the $xserver X server the default? (y/n) [y] "
|
||||||
|
+ default=y
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+if [ $prompt = 1 ]; then
|
||||||
|
+ condecho=echo
|
||||||
|
+ read input
|
||||||
|
+ case "$input" in
|
||||||
|
+ Y|y) input=y ;;
|
||||||
|
+ N|n) input=n ;;
|
||||||
|
+ '') input=$default ;;
|
||||||
|
+ *)
|
||||||
|
+ echo "'$input' not understood. Using default of '$default'."
|
||||||
|
+ input=$default
|
||||||
|
+ ;;
|
||||||
|
+ esac
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+if [ "$input" = "y" -o $fixname = 1 ]; then
|
||||||
|
+ mv /etc/X11/Xserver /etc/X11/Xserver.debian.$$
|
||||||
|
+ sed -e "1s/^.*$/\\/usr\\/bin\\/X11\\/$serverbin/" \
|
||||||
|
+ /etc/X11/Xserver.debian.$$ > /etc/X11/Xserver
|
||||||
|
+ rm /etc/X11/Xserver.debian.$$
|
||||||
|
+ if [ $fixname = 0 ]; then
|
||||||
|
+ $condecho
|
||||||
|
+ echo "The $xserver X server is now the default."
|
||||||
|
+ condecho=echo
|
||||||
|
+ fi
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+# invoke xserver-configure
|
||||||
|
+if [ -x /usr/sbin/xserver-configure ]; then
|
||||||
|
+ . /usr/sbin/xserver-configure
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+exit
|
||||||
|
--- xbf-i740-glibc-1.0.0.orig/debian/postrm
|
||||||
|
+++ xbf-i740-glibc-1.0.0/debian/postrm
|
||||||
|
@@ -0,0 +1,34 @@
|
||||||
|
+#!/bin/sh
|
||||||
|
+# Debian xserver-xserver-i740 package post-removal script
|
||||||
|
+# Modifications to the original xserver-svga postrm script
|
||||||
|
+# Copyright 1999 A. Martín. Licensed under the GNU GPL.
|
||||||
|
+# (Very) Mostly from
|
||||||
|
+# Debian xserver-svga package post-removal script
|
||||||
|
+# Copyright 1998 Branden Robinson. Licensed under the GNU GPL.
|
||||||
|
+# Acknowlegements to Stephen Early, Mark Eichin, and Manoj Srivastava.
|
||||||
|
+
|
||||||
|
+set -e
|
||||||
|
+
|
||||||
|
+package=xbf-i740-glibc
|
||||||
|
+serverbin=XBF_i740
|
||||||
|
+
|
||||||
|
+trap "echo ;\
|
||||||
|
+ echo 'Received signal. Aborting removal of xserver-xserver-i740 package.' ;\
|
||||||
|
+ echo ;\
|
||||||
|
+ exit 1" 1 2 3 15
|
||||||
|
+
|
||||||
|
+case "$1" in
|
||||||
|
+ remove) ;;
|
||||||
|
+ purge) ;;
|
||||||
|
+ upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) exit 0 ;;
|
||||||
|
+ *)
|
||||||
|
+ echo "ERROR: xserver-xserver-i740 postrm called with unknown argument \"$1\"."
|
||||||
|
+ echo "Aborting removal of xserver-xserver-i740 package."
|
||||||
|
+ exit 1 ;;
|
||||||
|
+esac
|
||||||
|
+
|
||||||
|
+sed "1s:/usr/bin/X11/$serverbin:/usr/bin/X11/XF86_NONE:" /etc/X11/Xserver > \
|
||||||
|
+ /etc/X11/Xserver.debian.$$
|
||||||
|
+mv /etc/X11/Xserver.debian.$$ /etc/X11/Xserver
|
||||||
|
+
|
||||||
|
+exit
|
||||||
115
patches/xf86config-glibc_1.0.0.i386-1.diff
Normal file
115
patches/xf86config-glibc_1.0.0.i386-1.diff
Normal file
@@ -0,0 +1,115 @@
|
|||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/changelog
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/changelog
|
||||||
|
@@ -0,0 +1,10 @@
|
||||||
|
+xf86config-glibc (1.0.0.i386-1) unstable; urgency=low
|
||||||
|
+
|
||||||
|
+ * Added preinst and postrm for xf86config and Card files diversion
|
||||||
|
+ * Converted from Slackware .tgz binary format to debian
|
||||||
|
+
|
||||||
|
+ -- Agustín Martín Domingo <agmartin@aq.upm.es> Thu, 15 Apr 1999 15:47:14 +0200
|
||||||
|
+
|
||||||
|
+Local variables:
|
||||||
|
+mode: debian-changelog
|
||||||
|
+End:
|
||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/control
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/control
|
||||||
|
@@ -0,0 +1,10 @@
|
||||||
|
+Source: xf86config-glibc
|
||||||
|
+Section: unknown
|
||||||
|
+Priority: extra
|
||||||
|
+Maintainer: Agustín Martín Domingo <agmartin@aq.upm.es>
|
||||||
|
+
|
||||||
|
+Package: xf86config-i740g
|
||||||
|
+Architecture: any
|
||||||
|
+Depends: ${shlibs:Depends}, xbf-i740-glibc
|
||||||
|
+Description: xf86config for Intel i740 based graphics cards
|
||||||
|
+ xf86 configuration tool for Intel i740 chipset based graphic cards
|
||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/copyright
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/copyright
|
||||||
|
@@ -0,0 +1,4 @@
|
||||||
|
+This package was debianized by the alien program by converting
|
||||||
|
+a binary Slackware tgz Package on Thu, 15 Apr 1999 15:47:14 +0200.
|
||||||
|
+
|
||||||
|
+Copyright: Unknown
|
||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/rules
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/rules
|
||||||
|
@@ -0,0 +1,57 @@
|
||||||
|
+#!/usr/bin/make -f
|
||||||
|
+# debian/rules that uses debhelper and alien
|
||||||
|
+# GNU copyright 1997 by Joey Hess.
|
||||||
|
+
|
||||||
|
+# Uncomment this to turn on verbose mode.
|
||||||
|
+#export DH_VERBOSE=1
|
||||||
|
+
|
||||||
|
+build:
|
||||||
|
+ dh_testdir
|
||||||
|
+ # Nothing to do.
|
||||||
|
+
|
||||||
|
+clean:
|
||||||
|
+ dh_testdir
|
||||||
|
+ dh_testroot
|
||||||
|
+ dh_clean
|
||||||
|
+
|
||||||
|
+# Build architecture-independent files here.
|
||||||
|
+binary-indep: build
|
||||||
|
+# We have nothing to do by default.
|
||||||
|
+
|
||||||
|
+# Build architecture-dependent files here.
|
||||||
|
+binary-arch: build
|
||||||
|
+# dh_testversion
|
||||||
|
+ dh_testdir
|
||||||
|
+ dh_testroot
|
||||||
|
+ dh_clean -k
|
||||||
|
+ dh_installdirs
|
||||||
|
+ install -d debian/tmp
|
||||||
|
+ cp -a `ls |grep -v debian` debian/tmp
|
||||||
|
+#
|
||||||
|
+# If you need to move files around in debian/tmp or do some
|
||||||
|
+# binary patching ... Insert it here
|
||||||
|
+#
|
||||||
|
+ dh_installdocs
|
||||||
|
+ dh_installexamples
|
||||||
|
+ dh_installmenu
|
||||||
|
+# dh_installinit
|
||||||
|
+ dh_installcron
|
||||||
|
+ dh_installmanpages
|
||||||
|
+# dh_undocumented
|
||||||
|
+ dh_installchangelogs
|
||||||
|
+# dh_strip
|
||||||
|
+ dh_compress
|
||||||
|
+ dh_fixperms
|
||||||
|
+ dh_suidregister
|
||||||
|
+ dh_installdeb
|
||||||
|
+ dh_shlibdeps
|
||||||
|
+ dh_gencontrol
|
||||||
|
+ dh_makeshlibs
|
||||||
|
+ dh_md5sums
|
||||||
|
+ dh_builddeb
|
||||||
|
+
|
||||||
|
+source diff:
|
||||||
|
+ @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
|
||||||
|
+
|
||||||
|
+binary: binary-indep binary-arch
|
||||||
|
+.PHONY: build clean binary-indep binary-arch binary
|
||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/preinst
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/preinst
|
||||||
|
@@ -0,0 +1,8 @@
|
||||||
|
+#!/bin/sh -e
|
||||||
|
+
|
||||||
|
+if [ install = "$1" ]; then
|
||||||
|
+ dpkg-divert --package xf86config-i740g --add --rename \
|
||||||
|
+ --divert /usr/X11R6/bin/xf86config.dpkg-old /usr/X11R6/bin/xf86config
|
||||||
|
+ dpkg-divert --package xf86config-i740g --add --rename \
|
||||||
|
+ --divert /usr/X11R6/lib/X11/Cards.dpkg-old /usr/X11R6/lib/X11/Cards
|
||||||
|
+fi
|
||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/postrm
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/postrm
|
||||||
|
@@ -0,0 +1,8 @@
|
||||||
|
+#!/bin/sh -e
|
||||||
|
+
|
||||||
|
+if [ remove = "$1" ]; then
|
||||||
|
+ dpkg-divert --package xf86config-i740g --remove --rename \
|
||||||
|
+ --divert /usr/X11R6/bin/xf86config.dpkg-old /usr/X11R6/bin/xf86config
|
||||||
|
+ dpkg-divert --package xf86config-i740g --remove --rename \
|
||||||
|
+ --divert /usr/X11R6/lib/X11/Cards.dpkg-old /usr/X11R6/lib/X11/Cards
|
||||||
|
+fi
|
||||||
296
patches/xf86config-glibc_1.0.0.i386-3.diff
Normal file
296
patches/xf86config-glibc_1.0.0.i386-3.diff
Normal file
@@ -0,0 +1,296 @@
|
|||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/changelog
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/changelog
|
||||||
|
@@ -0,0 +1,30 @@
|
||||||
|
+xf86config-glibc (1.0.0.i386-3) unstable; urgency=low
|
||||||
|
+
|
||||||
|
+ * postrm: Old diversions code moved to preinst
|
||||||
|
+ * preinst: Force the user to remove previous package if is (1.0.0.i386-1)
|
||||||
|
+
|
||||||
|
+ -- Agustín Martín Domingo <agmartin@aq.upm.es> Wed, 5 May 1999 15:03:25 +0200
|
||||||
|
+
|
||||||
|
+xf86config-glibc (1.0.0.i386-2) unstable; urgency=low
|
||||||
|
+
|
||||||
|
+ * Changed section from unknown to alien
|
||||||
|
+ * Cards: renamed to Ci740 to avoid diversion
|
||||||
|
+ * xf86config: patched to look for Ci740 and renamed to xf86config-i740
|
||||||
|
+ * Added xf86config wrapper script to warn about xf86config diversion
|
||||||
|
+ * postrm: Cleared old diversions if existing and renamed the remaining
|
||||||
|
+ to xf86config.xfree86
|
||||||
|
+ * preinst: removed diversion of Cards and renamed that of xf86config
|
||||||
|
+ to xf86conig.xfree86
|
||||||
|
+
|
||||||
|
+ -- Agustín Martín Domingo <agmartin@aq.upm.es> Wed, 5 May 1999 12:00:06 +0200
|
||||||
|
+
|
||||||
|
+xf86config-glibc (1.0.0.i386-1) unstable; urgency=low
|
||||||
|
+
|
||||||
|
+ * Added preinst and postrm for xf86config and Card files diversion
|
||||||
|
+ * Converted from Slackware .tgz binary format to debian
|
||||||
|
+
|
||||||
|
+ -- Agustín Martín Domingo <agmartin@aq.upm.es> Thu, 15 Apr 1999 15:47:14 +0200
|
||||||
|
+
|
||||||
|
+Local variables:
|
||||||
|
+mode: debian-changelog
|
||||||
|
+End:
|
||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/control
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/control
|
||||||
|
@@ -0,0 +1,14 @@
|
||||||
|
+Source: xf86config-glibc
|
||||||
|
+Section: alien
|
||||||
|
+Priority: extra
|
||||||
|
+Maintainer: Agustín Martín Domingo <agmartin@aq.upm.es>
|
||||||
|
+
|
||||||
|
+Package: xf86config-i740g
|
||||||
|
+Architecture: any
|
||||||
|
+Depends: ${shlibs:Depends}, xbf-i740-glibc
|
||||||
|
+Description: xf86config for XBF-i740 binary-only X server
|
||||||
|
+ xf86 configuration tool for the binary-only XBF-i740 X server
|
||||||
|
+ for Intel i740 chipset based graphic cards
|
||||||
|
+ .
|
||||||
|
+ Diverts the XFree86 xf86config to xf86config.xfree86
|
||||||
|
+
|
||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/copyright
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/copyright
|
||||||
|
@@ -0,0 +1,4 @@
|
||||||
|
+This package was debianized by the alien program by converting
|
||||||
|
+a binary Slackware tgz Package on Thu, 15 Apr 1999 15:47:14 +0200.
|
||||||
|
+
|
||||||
|
+Copyright: Unknown
|
||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/rules
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/rules
|
||||||
|
@@ -0,0 +1,64 @@
|
||||||
|
+#!/usr/bin/make -f
|
||||||
|
+# debian/rules that uses debhelper and alien
|
||||||
|
+# GNU copyright 1997 by Joey Hess.
|
||||||
|
+
|
||||||
|
+# Uncomment this to turn on verbose mode.
|
||||||
|
+#export DH_VERBOSE=1
|
||||||
|
+
|
||||||
|
+build:
|
||||||
|
+ dh_testdir
|
||||||
|
+ # Nothing to do.
|
||||||
|
+
|
||||||
|
+clean:
|
||||||
|
+ dh_testdir
|
||||||
|
+ dh_testroot
|
||||||
|
+ dh_clean
|
||||||
|
+
|
||||||
|
+# Build architecture-independent files here.
|
||||||
|
+binary-indep: build
|
||||||
|
+# We have nothing to do by default.
|
||||||
|
+
|
||||||
|
+# Build architecture-dependent files here.
|
||||||
|
+binary-arch: build
|
||||||
|
+# dh_testversion
|
||||||
|
+ dh_testdir
|
||||||
|
+ dh_testroot
|
||||||
|
+ dh_clean -k
|
||||||
|
+ dh_installdirs
|
||||||
|
+ install -d debian/tmp
|
||||||
|
+ cp -a `ls |grep -v debian` debian/tmp
|
||||||
|
+#
|
||||||
|
+# If you need to move files around in debian/tmp or do some
|
||||||
|
+# binary patching ... Insert it here
|
||||||
|
+#
|
||||||
|
+# Patching the binary to look for /usr/X11R6/lib/X11/Ci740 instead of
|
||||||
|
+# /usr/X11R6/lib/X11/Cards
|
||||||
|
+ ( cd debian/tmp/usr/X11R6/bin ; sed 's/\/X11\/Cards/\/X11\/Ci740/g' xf86config > xf86config-i740 ; chmod +x xf86config-i740 ; rm xf86config )
|
||||||
|
+# Renaming /usr/X11R6/lib/X11/Cards to /usr/X11R6/lib/X11/Ci740
|
||||||
|
+ ( cd debian/tmp/usr/X11R6/lib/X11/ ; mv Cards Ci740 )
|
||||||
|
+ ( install debian/xf86config debian/tmp/usr/X11R6/bin/xf86config )
|
||||||
|
+#
|
||||||
|
+ dh_installdocs
|
||||||
|
+ dh_installexamples
|
||||||
|
+ dh_installmenu
|
||||||
|
+# dh_installinit
|
||||||
|
+ dh_installcron
|
||||||
|
+ dh_installmanpages
|
||||||
|
+# dh_undocumented
|
||||||
|
+ dh_installchangelogs
|
||||||
|
+# dh_strip
|
||||||
|
+ dh_compress
|
||||||
|
+ dh_fixperms
|
||||||
|
+ dh_suidregister
|
||||||
|
+ dh_installdeb
|
||||||
|
+ dh_shlibdeps
|
||||||
|
+ dh_gencontrol
|
||||||
|
+ dh_makeshlibs
|
||||||
|
+ dh_md5sums
|
||||||
|
+ dh_builddeb
|
||||||
|
+
|
||||||
|
+source diff:
|
||||||
|
+ @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
|
||||||
|
+
|
||||||
|
+binary: binary-indep binary-arch
|
||||||
|
+.PHONY: build clean binary-indep binary-arch binary
|
||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/preinst
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/preinst
|
||||||
|
@@ -0,0 +1,30 @@
|
||||||
|
+#!/bin/sh -e
|
||||||
|
+
|
||||||
|
+# Fixing some previous mess
|
||||||
|
+
|
||||||
|
+if [ upgrade = "$1" ]; then
|
||||||
|
+ if [ -e /usr/X11R6/lib/X11/Ci740 -a -e /usr/X11R6/bin/xf86config-i740 ]; then
|
||||||
|
+ echo "OK, preserving old diversions"
|
||||||
|
+ else
|
||||||
|
+ echo "--------------------------------------------------------------"
|
||||||
|
+ echo " /usr/X11R6/lib/X11/Ci740 or /usr/X11R6/bin/xf86config-i740"
|
||||||
|
+ echo "do not exist."
|
||||||
|
+ echo "That means you are upgrading xf86config-i740g_1.0.0.i386-1.deb"
|
||||||
|
+ echo ""
|
||||||
|
+ echo " Due to changes in the diversions YOU HAVE FIRST TO REMOVE"
|
||||||
|
+ echo " PREVIOUS PACKAGE with dpkg -r xf86config-i740g"
|
||||||
|
+ echo "--------------------------------------------------------------"
|
||||||
|
+ exit 1
|
||||||
|
+ fi
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+if [ install = "$1" ]; then
|
||||||
|
+ dpkg-divert --package xf86config-i740g --add --rename \
|
||||||
|
+ --divert /usr/X11R6/bin/xf86config.xfree86 /usr/X11R6/bin/xf86config
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/patch-xf86config
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/patch-xf86config
|
||||||
|
@@ -0,0 +1 @@
|
||||||
|
+sed 's/\/X11\/Cards/\/X11\/Ci740/g' xf86config > xf86config-i740
|
||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/postrm
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/postrm
|
||||||
|
@@ -0,0 +1,9 @@
|
||||||
|
+#!/bin/sh -e
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+# Now the real diversion
|
||||||
|
+
|
||||||
|
+if [ remove = "$1" ]; then
|
||||||
|
+ dpkg-divert --package xf86config-i740g --remove --rename \
|
||||||
|
+ --divert /usr/X11R6/bin/xf86config.xfree86 /usr/X11R6/bin/xf86config
|
||||||
|
+fi
|
||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/preinst.0
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/preinst.0
|
||||||
|
@@ -0,0 +1,32 @@
|
||||||
|
+#!/bin/sh -e
|
||||||
|
+
|
||||||
|
+# Fixing some previous mess
|
||||||
|
+
|
||||||
|
+if [ upgrade = "$1" ]; then
|
||||||
|
+ if [ -e /usr/X11R6/lib/X11/Ci740 ]; then
|
||||||
|
+ echo "OK, preserving old diversions"
|
||||||
|
+ else
|
||||||
|
+ echo "Removing obsolete diversion of Cards to Cards.dpkg-old"
|
||||||
|
+ rm /usr/X11R6/lib/X11/Cards
|
||||||
|
+ dpkg-divert --package xf86config-i740g --remove --rename \
|
||||||
|
+ --divert /usr/X11R6/lib/X11/Cards.dpkg-old /usr/X11R6/lib/X11/Cards
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ if [ -x /usr/X11R6/bin/xf86config-i740 ]; then
|
||||||
|
+ echo "OK, preserving old diversions"
|
||||||
|
+ else
|
||||||
|
+ echo "Removing obsolete diversion of xf86config to xf86config.dpkg-old"
|
||||||
|
+ rm /usr/X11R6/bin/xf86config
|
||||||
|
+ dpkg-divert --package xf86config-i740g --remove --rename \
|
||||||
|
+ --divert /usr/X11R6/bin/xf86config.dpkg-old /usr/X11R6/bin/xf86config
|
||||||
|
+ dpkg-divert --package xf86config-i740g --add --rename \
|
||||||
|
+ --divert /usr/X11R6/bin/xf86config.xfree86 /usr/X11R6/bin/xf86config
|
||||||
|
+ fi
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+if [ install = "$1" ]; then
|
||||||
|
+ dpkg-divert --package xf86config-i740g --add --rename \
|
||||||
|
+ --divert /usr/X11R6/bin/xf86config.xfree86 /usr/X11R6/bin/xf86config
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+
|
||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/xf86config
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/xf86config
|
||||||
|
@@ -0,0 +1,60 @@
|
||||||
|
+#!/bin/sh
|
||||||
|
+
|
||||||
|
+# A wrapper to warn about the diversion of xf86config
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+message="\
|
||||||
|
+This is a wrapper script to remind you that you are using the
|
||||||
|
+xf86config-i740 script provided by RedHat when XBF-i740 was a
|
||||||
|
+binary-only server. The original XFree86 xf86config has been
|
||||||
|
+diverted to xf86config.xfree86 by the package xfree86-i740g.
|
||||||
|
+
|
||||||
|
+Since Intel has released the i740 specs to the XFree team, there
|
||||||
|
+will probably be native support for this card in the next XFree86
|
||||||
|
+release (XFree86 4), and this script will only be valid if you want
|
||||||
|
+to configure the binary-only XBF-i740 server, with the Card database
|
||||||
|
+probably outdated.
|
||||||
|
+
|
||||||
|
+For any other use you will need to use the script
|
||||||
|
+xf86config.xfree86 or XF86Setup.
|
||||||
|
+"
|
||||||
|
+warning_msg="WARNING!"
|
||||||
|
+
|
||||||
|
+if [ "$LANG" ]; then
|
||||||
|
+ LINGUA=`echo $LANG | sed -e 's/_.*//'`
|
||||||
|
+ if [ "$LINGUA" = "es" ]; then
|
||||||
|
+message="\
|
||||||
|
+Este es un script filtro para recordar que se está utilizando el
|
||||||
|
+script xf86config-i740 suministrado por RedHat cuando XBF-i740 era
|
||||||
|
+un servidor sólo-binario. El xf86config original de las XFree86
|
||||||
|
+ha sido redirigido a xf86config.xfree86 por el paquete xfree86-i740g.
|
||||||
|
+
|
||||||
|
+Ya que Intel ha suministrado las especificaciones de las i740 al equipo
|
||||||
|
+de las XFree, probablemente haya soporte nativo para esta tarjeta en la
|
||||||
|
+siguiente edición de las XFree86 (XFree86 4), y este script tendrá
|
||||||
|
+sentido únicamente para configurar el servidor sólo-binario XBF-i740,
|
||||||
|
+con la base de datos de tarjetas i740 posiblemente anticuada.
|
||||||
|
+
|
||||||
|
+Para cualquier otro uso será necesario utilizar
|
||||||
|
+xf86config.xfree86 o XF86Setup
|
||||||
|
+"
|
||||||
|
+warning_msg="¡ATENCIÓN!"
|
||||||
|
+ fi
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+if [ -x /usr/bin/whiptail ]; then
|
||||||
|
+ whiptail --clear --title "$warning_msg" --msgbox "$message" 0 0
|
||||||
|
+ echo "Using whiptail"
|
||||||
|
+elif [ -x /usr/bin/dialog ]; then
|
||||||
|
+ dialog --clear --title "$warning_msg" --msgbox "$message" 0 0
|
||||||
|
+ echo "Using dialog"
|
||||||
|
+else
|
||||||
|
+ echo $warning_msg
|
||||||
|
+ echo "---------------------------------"
|
||||||
|
+ echo $message | fmt
|
||||||
|
+ echo "---------------------------------"
|
||||||
|
+ echo "Press enter to continue"
|
||||||
|
+ read reply
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+xf86config-i740
|
||||||
|
--- xf86config-glibc-1.0.0.i386.orig/debian/preinst.pruebas
|
||||||
|
+++ xf86config-glibc-1.0.0.i386/debian/preinst.pruebas
|
||||||
|
@@ -0,0 +1,22 @@
|
||||||
|
+#!/bin/sh -e
|
||||||
|
+
|
||||||
|
+action="$1"
|
||||||
|
+divext="dpkg-old"
|
||||||
|
+
|
||||||
|
+default_divert ()
|
||||||
|
+{
|
||||||
|
+if [ install = "$action" -o ! -e "$1" ]; then
|
||||||
|
+ dpkg-divert --package $package --add --rename \
|
||||||
|
+ --divert $1.$divext $1
|
||||||
|
+fi
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+default_divert /usr/X11R6/bin/xf86config
|
||||||
|
+default_divert /usr/X11R6/lib/X11/Cards
|
||||||
|
+
|
||||||
|
+#if [ install = "$1" ]; then
|
||||||
|
+# dpkg-divert --package xf86config-i740g --add --rename \
|
||||||
|
+# --divert /usr/X11R6/bin/xf86config.dpkg-old /usr/X11R6/bin/xf86config
|
||||||
|
+# dpkg-divert --package xf86config-i740g --add --rename \
|
||||||
|
+# --divert /usr/X11R6/lib/X11/Cards.dpkg-old /usr/X11R6/lib/X11/Cards
|
||||||
|
+#fi
|
||||||
Reference in New Issue
Block a user