Buildroot in spec file doesn't support spaces in some RPM versions
(ALT Linux). Removed it from spec since --buildroot is already passed
on command line. Also quoted cd argument.
Some packages (e.g. vk-messenger.deb) have Description with text
starting on the next line:
Description:
Actual description text here
The regex required at least one character after colon, causing
summary to be empty. This broke conversion to RPM with error
"Empty tag: Summary".
Now uses first line of extended description as summary when the
initial Description line is empty.
Scripts (preinst, postinst, prerm, postrm) may contain literal '%'
characters (e.g., in printf format strings). When these scripts are
written directly into the RPM spec file, rpmbuild interprets '%' as
the start of a macro, causing build failures.
Commit 32f04ae removed the tar fallback in Tgz::build(), requiring
/sbin/makepkg (Slackware-specific) for --to-tgz conversion. This broke
alien on all non-Slackware systems.
Restore the fallback using the same method as the original makepkg
script.
Fixes: https://github.com/Project-OSS-Revival/alien/issues/4
1. **Modified `scan` method in `Alien/Package/Tgz.pm`:**
- The method now attempts to read and parse `install/slack-desc` from input .tgz packages.
- If found, the package's description and summary are populated from `slack-desc`.
- Fallback to existing behavior if `slack-desc` is not present.
2. **Modified `prep` method in `Alien/Package/Tgz.pm`:**
- When creating a .tgz package, an `install/slack-desc` file is now generated.
- This file is populated using the package's summary and description, formatted according to Slackware standards.
- A helper function `_format_slack_desc` was added to handle the formatting logic.
3. **Modified `build` method in `Alien/Package/Tgz.pm`:**
- When creating a .tgz package, `makepkg` is now used.
- Package is now named according to Slackware standard naming scheme.
See also: https://sourceforge.net/p/alien-pkg-convert/tickets/1/
Generated RPM packages provides directories that conflict with
the "filesystem" package. As a result, do not ship commonly-used
directories.
Patch provided by woob in the above ticket webpage.
alien (8.95) unstable; urgency=medium
* QA upload.
* debian/control:
- Bumped Standards-Version to 3.9.6.
- Removed duplicated section field.
* debian/copyright:
- Replaced protocol from http to https in the Format field.
- Included authors' e-mail addresses.
- Replaced GPL-2+ license reference by actual GPL-2+ license.
* debian/source/format: Created as 3.0 (native).
alien (8.94) unstable; urgency=medium
* QA upload.
* Fix "FTBFS with perl 5.22 in experimental (MakeMaker changes)":
remove override_dh_auto_install in debian/rules, and
use DESTDIR in Makefile.PL.
(Closes: #792371)
Add support for control.tar, control.tar.xz, data.tar, data.tar.xz,
data.tar.bz2 (deprecated) and data.tar.lzma (deprecated), so that the
fallback code is in line with current dpkg-deb.
The deprecated members are supported because there might be such binary
packages laying around.
There are some OS like Tizne which use rpm's and build
them for armv7l architecture. In debain nomenclature
this architecture is armel, so armv7l should be
an alias to armel.
Signed-off-by: Krzysztof Opasiak <k.opasiak@samsung.com>
Note that lsb-rpm has been dropped from rpm in Debian unstable. So
this changes nothing really; it already fell back to rpmbuild.
And I can find no mention of either lsb-rpm or lsb-rpmbuild in the LSB
spec, although I didn't look very hard.
The runpipe interface is not a good one, it would be better to use
something that does not expose to the shell.
As a quick fix, quote filenames in runpipe calls. Too bad if you have a
quote character in a file though. Later need to find a better interface
or do full shell escaping.
* Use debhelper compat level v7 when building packages. All changes
since v4 seem safe for alien's generated rules files.
* Use dh_prep instead of deprecated dh_clean -k.
(Patch by Duane Waddle, on a bug tracking system I don't frequent, that was
about the "expire" it 4 days from now. We got lucky Duane, but please use
the Debian BTS next time!)
* Avoid uninitialized value warning when debian/rules fails to run
due to alien being run in a noexec directory. Closes: #579216
* Prevent DESTROY stomping on alien's exit code sometimes.
Instead, avoid populating fields with empty strings if rpm fails to
get a field value, either due to not knowing the field, or due to the
field not being set.
Recent versions of rpm (such as 4.7.0) ignore the buildroot setting in
the spec file. Use the --buildroot option to ensure the correct
buildroot is used.