1
0
mirror of https://github.com/jordansissel/fpm synced 2025-04-29 14:58:00 +02:00
Commit Graph

52 Commits

Author SHA1 Message Date
Jordan Sissel
541550a74d Allow versions in Provides field for Debian packages
This fixes #1788. This also reverts #280. For #280, at the time, this
change to ignore versions was correct. Two years after #280, Debian
began allowing `Provides` field to have versions.

This change also fixes bug in gem-to-deb conversion where previously an
incorrect Provides syntax would be generated (but thanks to #280,
removed), so this bug was only noticed after #280 was undone!

Computers are hard sometimes.

Added tests for gem-to-deb conversion specifically for the Provides
field.

Tested manually with Docker on Ubuntu 14.04 and 18.04 and results meet
expectations.

The history here is follows:
* In 2012, fpm was patched to remove version specifiers in Provides
  field because Debian didn't support it.
* In 2014, Debian dpkg[1] added support for versions in Provides field
* Somewhere between 2015-2018, Debian and Ubuntu included this new
  version of dpkg.
* Debian packaging policy docs (v4.4.0) was updated to allow versions
  in the Provides field.

Expected impacts:
* Older versions of dpkg/etc should _ignore_ the presence of a version
  specifier. Testing on Ubuntu 14.04 confirmed this.
* Newer versions of dpkg/etc should respect the presence of a version
  specifier. Testing on Ubuntu 18.04 confirmed this.

[1] https://launchpad.net/debian/+source/dpkg/1.17.11
2021-07-06 14:25:06 -07:00
Morgan Rhodes
1f2f950581 Use fix_dependency when populating debian Replaces field (#1442)
The `Replaces` field needs to be formated 'package (operator version)'.
This makes use of the `fix_dependency` method for consistent formatting
with other dependencies.
2018-10-25 10:23:16 -07:00
TomyLobo
7e91faf92d Skip certain control file entries if their lists are empty.
For #1126
2016-06-18 04:38:28 -07:00
Nate Brown
1f4223c49f Allow removal of Vendor field for deb 2014-10-07 17:55:57 +00:00
Tray Torrance
59e7fb3f37 Add support for setting build-depends on debian targets 2013-05-23 12:31:07 -07:00
Jordan Sissel
79c2f8ef58 - fix_dependency on Conflicts and Breaks (#410)
- add test coverage for #410
2013-04-11 10:12:53 -07:00
Jordan Sissel
3726868ce2 - Represent '!=' version deps as Breaks, not Conflicts (#400) 2013-04-05 10:21:03 -07:00
Jordan Sissel
cab58fac1f - Add --deb-field for setting a custom field in the deb control file
Example: --deb-field "Vcs-Git: git@github.com/some/repo.git"
2013-01-16 15:15:13 -08:00
Jordan Sissel
04a876d785 Merge pull request #310 from r4um/fix_285
Add debian Recommends and Suggests
2013-01-02 15:58:47 -08:00
Pranay Kanwar
1c7a1fcc2b Parse and fix dependencies if required 2012-12-21 23:57:29 +05:30
Pranay Kanwar
9171ae1e17 * Fix #319 Add Debian Predepends. 2012-12-21 23:47:14 +05:30
Pranay Kanwar
2f3c22e086 Add debian Recommends and Suggests 2012-12-07 18:33:19 +05:30
Pranay Kanwar
ba081ac1d2 Add multiple provides correctly 2012-11-29 18:23:35 +05:30
Brett Gailey
4c1d3e3c70 Feature: no-depends option for deb and rpm 2012-11-14 14:29:07 -08:00
Andrew Bunday
d52f249afe Very minor edit. Fixing an incorrectly escaped comment in the deb erb
template file. (added '-' to the end tag).

Without the edit, the template was inserting an extra blank line into the
config file. When dpkg/reprepro try to read the file the blank line is
interpreted as the end of the configuration, and the additional lines
below it cause an error.

With the edit, no additional blank line is inserted. The comment is
correctly escaped.

Signed-off-by: Andrew Bunday <andrew.bunday@gmail.com>
2012-11-09 14:58:06 +00:00
Jordan Sissel
3b0aeccb7c - fix #280 and hae a test verify it. 2012-10-26 10:37:37 -07:00
Jordan Sissel
ee72521b30 - deb provides don't support versions (#280) 2012-10-26 10:30:43 -07:00
Jordan Sissel
5324ccc986 - Add --deb-priority (#232) 2012-08-25 04:10:51 -04:00
Jordan Sissel
807276c6ab Force dependency fixings (improves on #250) 2012-08-24 15:47:02 -07:00
Jordan Sissel
cd87f0a42d - Add installed-size
- thin out some older and unused conditions
2012-03-08 13:30:59 -08:00
Jordan Sissel
72ce5a9b8c - hand-merge 4e2f350ae1b30bc39065a70d13aeac4182c8380c from master. 2012-03-02 02:14:33 -08:00
Jordan Sissel
b78bd520f2 - get a bare minimum deb output working 2012-03-02 02:13:01 -08:00
Pieter Loubser
9c10b60e1b - Updated builder to include license and vendor
- Moved vendor data in debian erb
2012-02-18 17:18:07 +00:00
Pieter Loubser
72579f3389 - Added license meta data to packages
- Added vendor meta data to packages
2012-02-18 16:43:15 +00:00
Bernd Ahlers
90d6f1a1f4 Add support for deb Pre-Depends. 2011-07-26 19:18:25 +02:00
Jordan Sissel
dfc06b6bcc - simplify 2011-07-08 15:48:13 -07:00
Jordan Sissel
a5571f0ccf Merge branch 'bugs/deb-description-fix' 2011-07-08 00:48:55 -07:00
Jordan Sissel
12e990de51 - cleaner
- fix typo
2011-07-08 00:43:31 -07:00
Jordan Sissel
8a1b1c5dbc - fix deb descriptions for good? 2011-07-08 00:39:00 -07:00
Aman Gupta
351e791ecd fix missing newline in Provides 2011-07-08 00:34:29 -07:00
Aman Gupta
ffc007d9c0 Fix erb line endings 2011-07-07 23:17:04 -07:00
Aman Gupta
92e8cb9dcc removed all trailing whitespace: for i in $(git ls-files); do sed -i tmp -e "s/ *$//" $i; done 2011-07-07 22:52:55 -07:00
Aman Gupta
b077dd646b Add support for debian conflicts 2011-07-07 22:29:16 -07:00
Aman Gupta
c6684c6b3c remove extra whitespace after Section name 2011-07-07 22:29:02 -07:00
Andrew J Cosgriff
e86fa243cf remove bogus whitespace from debian template - it'll break a debian Packages file if it ends up in there 2011-06-28 11:12:59 +10:00
Jordan Sissel
91918e0a3d - Patch from jpluscplusm to work around misfeatures in debian's control
file regarding multiline descriptions.
2011-06-20 16:58:53 -07:00
Jordan Sissel
6799962f5d - convert to using the (still undocumented) ERB "explicit line ending"
mode '-' so we can use '-%>' to say no newline.
2011-06-18 23:22:39 -07:00
Jordan Sissel
b1ebf910c4 - move main program to FPM::Program
- support an ~/.fpmrc - the syntax of this file is one flag per line.
  This file is optional.
  https://github.com/jordansissel/fpm/issues/39
- Support --replaces (only .deb supports this right now, rpm seems to
  not).
2011-05-18 00:38:55 -07:00
Jordan Sissel
f1b1799d48 - default version comparison should be >=0, as '>0' is deprecated.
https://github.com/jordansissel/fpm/issues/33
2011-05-16 00:18:38 -07:00
sabowski
fbc585d3bf Check for empty lines in the description field
The description field cannot contain empty lines in a debian control
file. Adds " ." to empty lines. Also removes double printing of the
description in the control file.
2011-05-06 23:49:11 -07:00
Jordan Sissel
00aed80a74 - Refactor maintainer script support.
Supports {pre,post}{install,uninstall} tasks in deb and rpm now.

maintainers scripts are now supported. However, the interface is
likely to change in the future. I want to make a universal maintainer
script format that allows you to use the same exact script in an rpm
and in a deb package.

See https://github.com/jordansissel/fpm/issues/18
2011-05-05 00:02:27 -07:00
Jordan Sissel
f6f4730ee4 - add provids support to deb 2011-04-25 15:37:44 -07:00
Jordan Sissel
0cac7f906d - Add epoch support 2011-04-25 11:24:56 -07:00
Jordan Sissel
9d2fc48a96 - If the dependency given is simply "foo" convert it to be "foo (> 0)"
for debian packages. Otherwise apt-get update becomes quite sad.
2011-03-21 11:47:33 -07:00
anthezium
04c19be215 make iteration optional 2011-02-04 07:12:30 -08:00
Jordan Sissel
edf7d37620 - Convert gem '~>' dependency versions to something deb understands. 2011-01-20 16:38:06 -08:00
Jordan Sissel
ba9afb0088 - Fix dependency strings from gems to deb 2011-01-07 13:20:02 -08:00
Jeanine Adkisson
7e62488ebc use accessors in the templates
so the source can override them
2011-01-05 18:33:50 -08:00
Jordan Sissel
62744a8dbe - include some more paths in npm packages
- set more default values since apt-get barfs on packages with missing
  data, it seems. Hard to debug since the error messages are totally
  meaningless.
2011-01-04 01:29:15 -08:00
Jordan Sissel
3ef75dbcd5 - support dependencies again 2011-01-03 18:47:19 -08:00