Bug 193493 - [NEW PORT] sysutils/rinse: Install RPM-based system into a directory
Summary: [NEW PORT] sysutils/rinse: Install RPM-based system into a directory
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: John Marino
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-09-09 15:40 UTC by Jan Beich
Modified: 2014-10-31 16:36 UTC (History)
1 user (show)

See Also:


Attachments
shar (8.28 KB, text/plain)
2014-09-09 15:40 UTC, Jan Beich
no flags Details
|poudriere testport -P| log (9.3R i386) (13.57 KB, text/plain)
2014-09-09 15:46 UTC, Jan Beich
no flags Details
|poudriere testport -P| log (10.0R amd64) (13.62 KB, text/plain)
2014-09-09 15:48 UTC, Jan Beich
no flags Details
shar, v2 (8.49 KB, text/plain)
2014-09-10 01:20 UTC, Jan Beich
no flags Details
|poudriere testport -P| log (8.4R amd64) (13.79 KB, text/plain)
2014-09-10 01:21 UTC, Jan Beich
no flags Details
shar, v2.1 (8.50 KB, text/plain)
2014-09-10 09:58 UTC, Jan Beich
no flags Details
shar, v2.2 (7.46 KB, text/plain)
2014-09-28 21:16 UTC, Jan Beich
no flags Details
|poudriere testport -P| log (9.3R i386) (13.42 KB, text/plain)
2014-09-28 21:18 UTC, Jan Beich
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jan Beich freebsd_committer freebsd_triage 2014-09-09 15:40:02 UTC
Created attachment 147122 [details]
shar

Rinse is a simple tool which is designed to carry out the installation
of a new RPM-based distribution.

Using rinse you can easily setup simple chroot() systems running
different RPM-based distributions, such as Centos, Scientific Linux or
openSUSE.

The purpose and usage are analogous to the 'debootstrap' utility
familiar to users of Debian GNU/Linux. It was primarily designed to
work with the xen-tools software, which creates new guest images for
running inder the Xen hypervisor.

WWW: http://collab-maint.alioth.debian.org/rinse/
Comment 1 Jan Beich freebsd_committer freebsd_triage 2014-09-09 15:45:13 UTC
It can be used to help set up a linux environment for debugging or building packages compatible with emulators/linux_base-{f10,c6} e.g., newer glibc or linux-x86_64 nspluginwrapper target.

$ rinse --arch i386 --distribution fedora-10 --directory /compat/fedora10


Execute postcmd of *-release package
warning: /tmp/fedora-release-notes-10.0.0-1.noarch.rpm: Header V3 DSA signature: NOKEY, key ID 4ebfc273
error: failed to open /etc/mtab: No such file or directory
Preparing...                ########################################### [100%]
   1:fedora-release-notes   ########################################### [100%]
Running post-install script /usr/local/lib/rinse/common/10-resolv.conf.sh:
Running post-install script /usr/local/lib/rinse/common/15-mount-proc.sh:
Running post-install script /usr/local/lib/rinse/common/20-dev-zero.sh:
Running post-install script /usr/local/lib/rinse/fedora-10/post-install.sh:
  Setting up YUM cache
  Creating yum.conf
  Priming the yum cache
  Bootstrapping yum
  Cleaning up
Failed to set locale, defaulting to C
  Final tidy...
Installation complete.

$ rinse --arch i386 --distribution centos-6 --directory /compat/centos6


Execute postcmd of *-release package
warning: /tmp/centos-release-6-5.el6.centos.11.1.i686.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing...                ########################################### [100%]
   1:centos-release         ########################################### [100%]
Running post-install script /usr/local/lib/rinse/common/10-resolv.conf.sh:
Running post-install script /usr/local/lib/rinse/common/15-mount-proc.sh:
Running post-install script /usr/local/lib/rinse/common/20-dev-zero.sh:
Running post-install script /usr/local/lib/rinse/centos-6/post-install.sh:
  Bootstrapping yum
Loaded plugins: fastestmirror, keys, protectbase
base                                                         | 3.7 kB     00:00
base/primary_db                                              | 3.5 MB     00:02
extras                                                       | 3.3 kB     00:00
extras/primary_db                                            |  19 kB     00:00
updates                                                      | 3.4 kB     00:00
updates/primary_db                                           | 4.5 MB     00:02
0 packages excluded due to repository protections
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package dhclient.i686 12:4.1.1-38.P1.el6.centos will be installed
--> Processing Dependency: dhcp-common = 12:4.1.1-38.P1.el6.centos for package: 12:dhclient-4.1.1-38.P1.el6.centos.i686
--> Processing Dependency: libcap-ng.so.0 for package: 12:dhclient-4.1.1-38.P1.el6.centos.i686
---> Package vim-minimal.i686 2:7.2.411-1.8.el6 will be installed
---> Package yum.noarch 0:3.2.29-40.el6.centos will be updated
---> Package yum.noarch 0:3.2.29-43.el6.centos will be an update
--> Running transaction check
---> Package dhcp-common.i686 12:4.1.1-38.P1.el6.centos will be installed
---> Package libcap-ng.i686 0:0.6.4-3.el6_0.1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

====================================================================================
 Package           Arch         Version                         Repository     Size
====================================================================================
Installing:
 dhclient          i686         12:4.1.1-38.P1.el6.centos       base r316 k
 vim-minimal       i686         2:7.2.411-1.8.el6               base r337 k
Updating:
 yum               noarch       3.2.29-43.el6.centos            updates       996 k
Installing for dependencies:
 dhcp-common       i686         12:4.1.1-38.P1.el6.centos       base r142 k
 libcap-ng         i686         0.6.4-3.el6_0.1                 base r21 k

Transaction Summary
====================================================================================
Install       4 Package(s)
Upgrade       1 Package(s)

Total download size: 1.8 M
Downloading Packages:
(1/5): dhclient-4.1.1-38.P1.el6.centos.i686.rpm              | 316 kB     00:00
(2/5): dhcp-common-4.1.1-38.P1.el6.centos.i686.rpm           | 142 kB     00:00
(3/5): libcap-ng-0.6.4-3.el6_0.1.i686.rpm                    |  21 kB     00:00
(4/5): vim-minimal-7.2.411-1.8.el6.i686.rpm                  | 337 kB     00:00
(5/5): yum-3.2.29-43.el6.centos.noarch.rpm                   | 996 kB     00:00
------------------------------------------------------------------------------------
Total                                               1.5 MB/s | 1.8 MB     00:01
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : 12:dhcp-common-4.1.1-38.P1.el6.centos.i686                       1/6
  Installing : libcap-ng-0.6.4-3.el6_0.1.i686                                   2/6
  Updating   : yum-3.2.29-43.el6.centos.noarch                                  3/6
  Installing : 12:dhclient-4.1.1-38.P1.el6.centos.i686                          4/6
  Installing : 2:vim-minimal-7.2.411-1.8.el6.i686                               5/6
  Cleanup    : yum-3.2.29-40.el6.centos.noarch                                  6/6
  Verifying  : 12:dhcp-common-4.1.1-38.P1.el6.centos.i686                       1/6
  Verifying  : 12:dhclient-4.1.1-38.P1.el6.centos.i686                          2/6
  Verifying  : 2:vim-minimal-7.2.411-1.8.el6.i686                               3/6
  Verifying  : libcap-ng-0.6.4-3.el6_0.1.i686                                   4/6
  Verifying  : yum-3.2.29-43.el6.centos.noarch                                  5/6
  Verifying  : yum-3.2.29-40.el6.centos.noarch                                  6/6

Installed:
  dhclient.i686 12:4.1.1-38.P1.el6.centos     vim-minimal.i686 2:7.2.411-1.8.el6

Dependency Installed:
  dhcp-common.i686 12:4.1.1-38.P1.el6.centos    libcap-ng.i686 0:0.6.4-3.el6_0.1

Updated:
  yum.noarch 0:3.2.29-43.el6.centos

Complete!
  cleaning up...
Failed to set locale, defaulting to C
Loaded plugins: fastestmirror, keys, protectbase
Cleaning repos: base extras updates
Cleaning up Everything
  post-install.sh : done.
Installation complete.
Comment 2 Jan Beich freebsd_committer freebsd_triage 2014-09-09 15:46:53 UTC
Created attachment 147125 [details]
|poudriere testport -P| log (9.3R i386)
Comment 3 Jan Beich freebsd_committer freebsd_triage 2014-09-09 15:48:04 UTC
Created attachment 147126 [details]
|poudriere testport -P| log (10.0R amd64)

$ portlint -AC
looks fine.
Comment 4 Jan Beich freebsd_committer freebsd_triage 2014-09-10 01:20:32 UTC
Created attachment 147151 [details]
shar, v2
Comment 5 Jan Beich freebsd_committer freebsd_triage 2014-09-10 01:21:04 UTC
Created attachment 147152 [details]
|poudriere testport -P| log (8.4R amd64)
Comment 6 Jan Beich freebsd_committer freebsd_triage 2014-09-10 09:58:29 UTC
Created attachment 147158 [details]
shar, v2.1

s/tar/bsdtar/ and add -P --chroot to tar(1) flags in order to fix extracting centos-* amd64.
Comment 7 Jan Beich freebsd_committer freebsd_triage 2014-09-28 21:16:45 UTC
Created attachment 147774 [details]
shar, v2.2

- kill @dirrm (per CHANGES from 20140922)
- use @dir for empty /var/cache/rinse
Comment 8 Jan Beich freebsd_committer freebsd_triage 2014-09-28 21:18:10 UTC
Created attachment 147775 [details]
|poudriere testport -P| log (9.3R i386)
Comment 9 John Marino freebsd_committer freebsd_triage 2014-10-31 16:25:47 UTC
I'll take it, but I'll add a Makefile.DragonFly file to ignore this port on DragonFly (No linuxolator on amd64 and i386 is no longer supported)
Comment 10 commit-hook freebsd_committer freebsd_triage 2014-10-31 16:34:37 UTC
A commit references this bug:

Author: marino
Date: Fri Oct 31 16:34:23 UTC 2014
New revision: 371874
URL: https://svnweb.freebsd.org/changeset/ports/371874

Log:
  Add new port sysutils/rinse

  PR:		193493
  Submitted by:	Jan Beich

  Rinse is a simple tool which is designed to carry out the installation
  of a new RPM-based distribution. Using rinse you can easily setup simple
  chroot() systems running different RPM-based distributions, such as
  Centos, Scientific Linux or openSUSE.

  The purpose and usage are analogous to the 'debootstrap' utility
  familiar to users of Debian GNU/Linux. It was primarily designed to
  work with the xen-tools software, which creates new guest images for
  running inder the Xen hypervisor.

Changes:
  head/sysutils/Makefile
  head/sysutils/rinse/
  head/sysutils/rinse/Makefile
  head/sysutils/rinse/distinfo
  head/sysutils/rinse/files/
  head/sysutils/rinse/files/patch-bin__rinse
  head/sysutils/rinse/files/patch-scripts.common__20-dev-zero.sh
  head/sysutils/rinse/pkg-descr
  head/sysutils/rinse/pkg-plist
Comment 11 John Marino freebsd_committer freebsd_triage 2014-10-31 16:36:55 UTC
I decided to just use <pre> and <post> to save a file.
I hope that's ok.

We really need a "NOT_FOR_OS= DragonFly" functionality...