Debian package management: Difference between revisions

From wiki
Jump to navigation Jump to search
imported>Johayek
No edit summary
imported>Johayek
mNo edit summary
Line 37: Line 37:
* https://en.wikipedia.org/wiki/Alien_(software)
* https://en.wikipedia.org/wiki/Alien_(software)
* https://www.howtoforge.com/converting_rpm_to_deb_with_alien : alien -k ...
* https://www.howtoforge.com/converting_rpm_to_deb_with_alien : alien -k ...
* https://unix.stackexchange.com/questions/9714/what-is-the-need-for-fakeroot-command-in-linux#9720
: # this command line creates a Debian package from an RPM package
: # (using that e-mail address for the package creator (?)).
: # CAVEAT: won't actually work, because creating a Debian package requires running this as root
: $ env EMAIL='jochen.hayek@ext.COMPANY.com' alien --to-deb --keep-version ...
: # some command line parameters can only get passied to "alien" as environment variables
: # you do not have root priviliges,
: # but you need to pretend to have them for achieving certain goals like creating a Debian package
: $ fakeroot --unknown-is-real ...


Open questions:
Open questions:

Revision as of 10:41, 16 April 2018

# the Debian APT = Advanced Packaging Tool
# update and upgrade
$ sudo apt-get update # update is used to resynchronize the package index files from their sources
$ sudo apt-get upgrade # upgrade is used to install the newest versions of all packages currently installed on the system from the sources enumerated in /etc/apt/sources.list

dealing with packages files (.deb)

# what's the official package name?
$ dpkg --info PACKAGE.deb
# which files are included? will be created from this package file?
$ dpkg --contents PACKAGE.deb
# ...
$ ...

dealing with installed packages

# which packages are installed (together with details)?
$ dpkg-query --list
# is there an installed package, that sounds like XYZ?
$ dpkg-query --list | fgrep XYZ
# details of an installed package (that you know the name of, e.g. PACKAGE)
$ dpkg-query --list PACKAGE
# what's the content of an installed package (e.g. PACKAGE)?
$ dpkg-query --listfiles PACKAGE
# ...
$ ...

rpm2deb

# this command line creates a Debian package from an RPM package
# (using that e-mail address for the package creator (?)).
# CAVEAT: won't actually work, because creating a Debian package requires running this as root
$ env EMAIL='jochen.hayek@ext.COMPANY.com' alien --to-deb --keep-version ...
# some command line parameters can only get passied to "alien" as environment variables
# you do not have root priviliges,
# but you need to pretend to have them for achieving certain goals like creating a Debian package
$ fakeroot --unknown-is-real ...

Open questions:

  • how to deal with dependencies specified within the RPM package?

The blog article got created 1st, but then the content got moved here: