mirror of
https://github.com/Project-OSS-Revival/alien.git
synced 2026-04-24 14:00:17 +00:00
* The great rewrite. Alien is now based on pure object oriented package
objects. These objects can read all relevant details about a package, and
can generate packages based on that information. Thus, converting from one
format to another becomes a simple matter of generating one of these
objects, pointing it at a package, mutating it into the destination
class, and telling it to write the new package out! A basic alien can now
be written using these objects in one "line" of perl -- in fact, here is
one:
perl -MAlien::Package::Deb -MAlien::Package::Rpm -e '
$p=Alien::Package::Rpm->new(filename => shift); $p->unpack;
* Almost every line of code has been rewritten.
* Package descriptions now include a note that they were converted with
alien. There are other numerous changes to the converted packages, for
instance, generated .deb's now have more info in their copyright file.
* The template files were all moved inside the objects, which is actually
cleaner and is certainly easier to deal with.
* Usernames are now looked up the way POSIX intended.
* alien.1 is now generated from POD docs.
* Alien can now convert into multiple formats at once.
* Alien now always cleans up after failed converts, Closes: #62331
* Alien can now be used to just install a package with no conversion.
Closes: #53441
* Use a Makefile.PL because that seems to make sense, which means lots of
the build system had to be changed.
This commit is contained in:
@@ -28,7 +28,7 @@ extra_install:
|
||||
|
||||
alien:
|
||||
perl -pe ' \
|
||||
$$_="\tmy \$$version_string=\"$(VER)\";" \
|
||||
$$_="\tmy \$$version_string=\"$(VER)\";\n" \
|
||||
if /VERSION_AUTOREPLACE/' alien.pl > alien
|
||||
}
|
||||
}
|
||||
@@ -39,6 +39,6 @@ WriteMakefile(
|
||||
# Pure evil. Hook into build and install targets
|
||||
'depend' => {'all:' => 'extra_build',
|
||||
'install:' => 'extra_install',
|
||||
'pure_install:' => 'extra_install'
|
||||
'clean' => {FILES => 'alien.lsm alien.subst'},
|
||||
'pure_install:' => 'extra_install'},
|
||||
'clean' => {FILES => 'alien.lsm alien'},
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user