You are not logged in.

#26 2014-11-18 00:36:49

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 9,853
Website

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

Glad you guys found it useful.  Enjoy.


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Offline

#27 2015-03-02 21:29:52

GSF1200S
Member
Registered: 2008-12-24
Posts: 474

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

Im having a weird issue with clean-chroot-manager. It had been awhile since I had used it since I had no need to build any packages.

For some reason now, I get a pacman database error when trying to build firefox. The exact message is:

==> Checking runtime dependencies...
error: failed to initialize alpm library
(database is incorrect version: /var/lib/pacman/)
error:   try running pacman-db-upgrade
==> ERROR: 'pacman' returned a fatal error (255): 

==> ERROR: Build failed, check /sandbox/poeticrpm/build
[poeticrpm@codething firefox]$ sudo ccm s
Swipe your right index finger across the fingerprint reader
----> Attempting to build package...
==> Creating clean working copy [poeticrpm]...done
error: failed to initialize alpm library
(database is incorrect version: /var/lib/pacman/)
error:   try running pacman-db-upgrade

==> Making package: firefox 36.0-1 (Mon Mar  2 15:25:06 CST 2015)

...

==> Checking runtime dependencies...
error: failed to initialize alpm library
(database is incorrect version: /var/lib/pacman/)
error:   try running pacman-db-upgrade
==> ERROR: 'pacman' returned a fatal error (255): 

==> ERROR: Build failed, check /sandbox/poeticrpm/build 

I checked the man page and unless im missing something, I dont see any way to fix this. I tried ccm u which made sure all packages were upgraded. I then tried chrooting manually into the sandbox to run pacman-db-upgrade. It seems to work, but I get the error message again upon trying to build. Host Arch system is up to date and working fine and the ccm chroot is updated as per ccm u.

Is this a bug or am I just missing something really stupid?

Offline

#28 2015-03-02 21:35:59

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 9,853
Website

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

Must have been a while... The pacman db in the chroot needs to be updated.  Just nuke the CHROOT and rebuild it.


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Offline

#29 2015-03-06 00:32:55

GSF1200S
Member
Registered: 2008-12-24
Posts: 474

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

graysky wrote:

Must have been a while... The pacman db in the chroot needs to be updated.  Just nuke the CHROOT and rebuild it.

Yeah, I should of thought of that. Works great now smile

Offline

#30 2015-04-06 19:42:05

kvtb
Member
Registered: 2014-01-11
Posts: 26

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

in the man page, BUGS section a known issue is listed about git based packages not working (not an issue in ccm itself).... but, does anyone know a workaround?
I tried to explicitly use arch-nspawn to install git using pacman.
This succeeds, but when running ccm64 again, it again says:

/usr/bin/makepkg: line 550: git: command not found

sad

So does anyone know how to build a git-based in a chroot? Thanks!

Offline

#31 2015-04-06 19:50:34

WorMzy
Forum Moderator
From: Scotland
Registered: 2010-06-16
Posts: 9,134
Website

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

Install git outside of the chroot, on your live system.


Sakura:-
Mobo: MSI X299 TOMAHAWK ARCTIC // Processor: Intel Core i7-7820X 3.6GHz // GFX: nVidia GeForce GTX 970 // RAM: 32GB (4x 8GB) Corsair DDR4 (@ 3000MHz) // Storage: 1x 3TB HDD, 5x 1TB HDD, 2x 120GB SSD, 1x 275GB M2 SSD

Making lemonade from lemons since 2015.

Offline

#32 2015-04-06 20:12:50

kvtb
Member
Registered: 2014-01-11
Posts: 26

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

WorMzy, there is no Like button, so: thank you!

Offline

#33 2015-09-13 08:42:10

Slithery
Forum Moderator
From: Norfolk, UK
Registered: 2013-12-01
Posts: 3,441

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

Hi graysky,

I'm having what may be the same issue as Mr Green had in post #8 with the local repo, but the patch now points to a dead link - it may not even be relevant here.

I'll post the PKGBUILD but I don't think it's relevant as it builds OK outside the chroot and I get the same error with every package I try.

PKGBUILD

# Maintainer: Slithery <aur at slithery dot uk>

pkgname=mediterranean-gtk-themes-git
pkgver=v2.03.0.1.r30.g1c33164
pkgrel=1
pkgdesc="The Mediterranean family of GTK+2/3 themes"
arch=('any')
url=(https://github.com/rbrito/mediterranean-gtk-themes)
license=('GPL3')
optdepends=('gtk-engines: For GTK2 support'
            'gtk-engine-murrine: for GTK2 support'
            'gtk3: for GTK3 support')
makedepends=('git')
source=("${pkgname}::git+${url}")
sha256sums=('SKIP')

pkgver() {
  cd "${pkgname}"
  ( set -o pipefail
    git describe --long 2>/dev/null | sed 's/\([^-]*-g\)/r\1/;s/-/./g' ||
    printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
  )
}

package () {
  cd "${pkgname}"
  find Mediterranean*/ -type f -exec install -Dm644 "{}" "${pkgdir}/usr/share/themes/{}" \;
}

My clean-chroot-manager.conf is default except for enabling namcap.

First build attempt using freshly nuked and created chroot...

slithery@red:~/aur-dev/mediterranean-gtk-themes-git$ sudo ccm64 s
----> Attempting to build package...
==> Creating clean working copy [slithery]...done
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
:: Starting full system upgrade...
 there is nothing to do
==> Making package: mediterranean-gtk-themes-git v2.03.0.1.r30.g1c33164-1 (Sun Sep 13 09:34:35 BST 2015)
==> Retrieving sources...
  -> Cloning mediterranean-gtk-themes-git git repo...
Cloning into bare repository '/home/slithery/aur-dev/mediterranean-gtk-themes-git/mediterranean-gtk-themes-git'...
remote: Counting objects: 3774, done.
remote: Total 3774 (delta 0), reused 0 (delta 0), pack-reused 3774
Receiving objects: 100% (3774/3774), 3.72 MiB | 529.00 KiB/s, done.
Resolving deltas: 100% (2305/2305), done.
Checking connectivity... done.
==> Validating source files with sha256sums...
    mediterranean-gtk-themes-git ... Skipped
==> Making package: mediterranean-gtk-themes-git v2.03.0.1.r30.g1c33164-1 (Sun Sep 13 09:34:44 BST 2015)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Installing missing dependencies...
resolving dependencies...
looking for conflicting packages...

Packages (2) perl-error-0.17024-1  git-2.5.1-1

Total Installed Size:  25.18 MiB

:: Proceed with installation? [Y/n] 
(2/2) checking keys in keyring                                                                                      [######################################################################] 100%
(2/2) checking package integrity                                                                                    [######################################################################] 100%
(2/2) loading package files                                                                                         [######################################################################] 100%
(2/2) checking for file conflicts                                                                                   [######################################################################] 100%
(2/2) checking available disk space                                                                                 [######################################################################] 100%
(1/2) installing perl-error                                                                                         [######################################################################] 100%
(2/2) installing git                                                                                                [######################################################################] 100%
Optional dependencies for git
    tk: gitk and git gui
    perl-libwww: git svn
    perl-term-readkey: git svn
    perl-mime-tools: git send-email
    perl-net-smtp-ssl: git send-email TLS support
    perl-authen-sasl: git send-email TLS support
    python2: various helper scripts
    subversion: git svn
    cvsps2: git cvsimport
    gnome-keyring: GNOME keyring credential helper
==> Retrieving sources...
==> Validating source files with sha256sums...
    mediterranean-gtk-themes-git ... Skipped
==> Extracting sources...
  -> Creating working copy of mediterranean-gtk-themes git repo...
Cloning into 'mediterranean-gtk-themes-git'...
done.
==> Starting pkgver()...
==> Entering fakeroot environment...
==> Starting package()...
==> Tidying install...
  -> Purging unwanted files...
  -> Removing libtool files...
  -> Removing static library files...
  -> Compressing man and info pages...
  -> Stripping unneeded symbols from binaries and libraries...
==> Creating package "mediterranean-gtk-themes-git"...
  -> Generating .PKGINFO file...
  -> Generating .MTREE file...
  -> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: mediterranean-gtk-themes-git v2.03.0.1.r30.g1c33164-1 (Sun Sep 13 09:35:06 BST 2015)
==> Installing package mediterranean-gtk-themes-git with pacman -U...
loading packages...
resolving dependencies...
looking for conflicting packages...

Packages (1) mediterranean-gtk-themes-git-v2.03.0.1.r30.g1c33164-1

Total Installed Size:  10.61 MiB

:: Proceed with installation? [Y/n] 
(1/1) checking keys in keyring                                                                                      [######################################################################] 100%
(1/1) checking package integrity                                                                                    [######################################################################] 100%
(1/1) loading package files                                                                                         [######################################################################] 100%
(1/1) checking for file conflicts                                                                                   [######################################################################] 100%
(1/1) checking available disk space                                                                                 [######################################################################] 100%
(1/1) installing mediterranean-gtk-themes-git                                                                       [######################################################################] 100%
Optional dependencies for mediterranean-gtk-themes-git
    gtk-engines: For GTK2 support
    gtk-engine-murrine: for GTK2 support
    gtk3: for GTK3 support
resolving dependencies...
looking for conflicting packages...

Packages (6) elfutils-0.163-1  licenses-20140629-1  pyalpm-0.7-2  python-3.4.3-2  python-pyelftools-0.23-1  namcap-3.2.5-2

Total Installed Size:  94.01 MiB

:: Proceed with installation? [Y/n] 
(6/6) checking keys in keyring                                                                                      [######################################################################] 100%
(6/6) checking package integrity                                                                                    [######################################################################] 100%
(6/6) loading package files                                                                                         [######################################################################] 100%
(6/6) checking for file conflicts                                                                                   [######################################################################] 100%
(6/6) checking available disk space                                                                                 [######################################################################] 100%
(1/6) installing python                                                                                             [######################################################################] 100%
Optional dependencies for python
    python-setuptools
    python-pip
    sqlite
    mpdecimal: for decimal
    xz: for lzma [installed]
    tk: for tkinter
(2/6) installing pyalpm                                                                                             [######################################################################] 100%
(3/6) installing licenses                                                                                           [######################################################################] 100%
(4/6) installing elfutils                                                                                           [######################################################################] 100%
(5/6) installing python-pyelftools                                                                                  [######################################################################] 100%
(6/6) installing namcap                                                                                             [######################################################################] 100%
Checking PKGBUILD
Checking mediterranean-gtk-themes-git-v2.03.0.1.r30.g1c33164-1-any.pkg.tar.xz
----> Adding package to chroot repo...
ls: cannot access *.pkg.tar.xz: No such file or directory
slithery@red:~/aur-dev/mediterranean-gtk-themes-git$ 

Second build attempt using existing chroot...

slithery@red:~/aur-dev/mediterranean-gtk-themes-git$ sudo ccm64 s
----> Attempting to build package...
==> Creating clean working copy [slithery]...done
:: Synchronizing package databases...
error: failed retrieving file 'chroot_local.db' from disk : Couldn't open file /repo/chroot_local.db
error: failed to update chroot_local (download library error)
 core is up to date
 extra is up to date
 community is up to date
:: Starting full system upgrade...
 there is nothing to do
==> Making package: mediterranean-gtk-themes-git v2.03.0.1.r30.g1c33164-1 (Sun Sep 13 09:37:20 BST 2015)
==> Retrieving sources...
  -> Updating mediterranean-gtk-themes-git git repo...
Fetching origin
==> Validating source files with sha256sums...
    mediterranean-gtk-themes-git ... Skipped
warning: database file for 'chroot_local' does not exist
==> Making package: mediterranean-gtk-themes-git v2.03.0.1.r30.g1c33164-1 (Sun Sep 13 09:37:22 BST 2015)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
warning: database file for 'chroot_local' does not exist
==> Installing missing dependencies...
warning: database file for 'chroot_local' does not exist
error: failed to prepare transaction (could not find database)
==> ERROR: 'pacman' failed to install missing dependencies.
==> ERROR: Build failed, check /scratch/chroot64/slithery/build
slithery@red:~/aur-dev/mediterranean-gtk-themes-git$ 

My chroot lives on a btrfs filesystem in a subvolume inside another subvolume.

/etc/fstab

LABEL=vol0              /                           btrfs       rw,noatime,compress=lzo,space_cache,subvol=red      0       0
LABEL=vol0              /mnt/data                   btrfs       rw,noatime,compress=lzo,space_cache,subvol=data     0       0
LABEL=vol0              /mnt/@vol0                  btrfs       rw,noatime,compress=lzo,space_cache                 0       0
LABEL=vol0              /mnt/home                   btrfs       rw,noatime,compress=lzo,space_cache,subvol=home     0       0

btrfs subvolumes

slithery@red:~/aur-dev/mediterranean-gtk-themes-git$ sudo btrfs subvolume list /mnt/@vol0/
ID 257 gen 76152 top level 5 path root
ID 258 gen 76099 top level 5 path home
ID 259 gen 76062 top level 5 path data
ID 2483 gen 76153 top level 5 path red
ID 2484 gen 57953 top level 2483 path red/var/lib/machines
ID 2485 gen 58798 top level 5 path red-init
ID 2607 gen 76145 top level 2483 path red/scratch/chroot64/root
ID 2609 gen 76147 top level 2483 path red/scratch/chroot64/slithery
slithery@red:~/aur-dev/mediterranean-gtk-themes-git$ 

Any ideas?

Slithery

Last edited by Slithery (2015-09-13 08:53:53)


No, it didn't "fix" anything. It just shifted the brokeness one space to the right. - jasonwryan
Closing -- for deletion; Banning -- for muppetry. - jasonwryan

aur - dotfiles

Offline

#34 2015-09-13 09:07:49

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 9,853
Website

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

:confused:

I can build this in a clean chroot on tmpfs (not btrfs).

% ccm s
----> No chroot has been created so making one now...
==> Creating install root at /scratch/.chroot64/root
==> Installing packages to /scratch/.chroot64/root
:: Synchronizing package databases...
 router                                               3.6 KiB  3.48M/s 00:00 [############################################] 100%
 core                                               120.0 KiB  1277K/s 00:00 [############################################] 100%
 extra                                             1808.7 KiB  8.49M/s 00:00 [############################################] 100%
 community                                            2.8 MiB  9.45M/s 00:00 [############################################] 100%
:: There are 25 members in group base-devel:
:: Repository core
   1) autoconf  2) automake  3) binutils  4) bison  5) fakeroot  6) file  7) findutils  8) flex  9) gawk  10) gcc  11) gettext
   12) grep  13) groff  14) gzip  15) libtool  16) m4  17) make  18) pacman  19) patch  20) pkg-config  21) sed  22) sudo
   23) texinfo  24) util-linux  25) which

Enter a selection (default=all): 
resolving dependencies...
looking for conflicting packages...
warning: dependency cycle detected:
warning: ncurses will be installed before its bash dependency

Packages (96) acl-2.2.52-2  archlinux-keyring-20150605-1  attr-2.4.47-1  bash-4.3.042-1  bzip2-1.0.6-5
              ca-certificates-20150402-1  ca-certificates-cacert-20140824-2  ca-certificates-mozilla-3.20-1
              ca-certificates-utils-20150402-1  coreutils-8.24-1  cracklib-2.9.4-1  curl-7.44.0-1  db-5.3.28-2  diffutils-3.3-2
              e2fsprogs-1.42.12-2  expat-2.1.0-4  filesystem-2015.02-1  gc-7.4.2-3  gcc-libs-5.2.0-2  gdbm-1.11-1
              glib2-2.44.1-1  glibc-2.22-3  gmp-6.0.0-2  gnupg-2.1.7-1  gnutls-3.4.4.1-1  gpgme-1.6.0-1  guile-2.0.11-2
              iana-etc-2.30-5  keyutils-1.5.9-1  krb5-1.13.2-1  less-479-1  libarchive-3.1.2-8  libassuan-2.2.1-1
              libatomic_ops-7.4.2-1  libcap-2.24-2  libffi-3.2.1-1  libgcrypt-1.6.4-1  libgpg-error-1.20-1  libidn-1.32-1
              libksba-1.3.3-1  libldap-2.4.42-2  libmpc-1.0.3-1  libsasl-2.1.26-7  libssh2-1.6.0-1  libsystemd-225-1
              libtasn1-4.6-1  libtirpc-0.3.2-2  libunistring-0.9.6-1  libutil-linux-2.26.2-1  linux-api-headers-4.1.4-1
              lz4-131-1  lzo-2.09-1  mpfr-3.1.3.p4-1  ncurses-5.9-7  nettle-3.1.1-1  npth-1.2-1  openssl-1.0.2.d-1
              p11-kit-0.23.1-2  pacman-mirrorlist-20150909-1  pam-1.2.1-1  pambase-20130928-1  pcre-8.37-4  perl-5.22.0-1
              pinentry-0.9.5-1  pth-2.0.7-5  readline-6.3.008-1  shadow-4.2.1-3  tar-1.28-1  tzdata-2015f-1  xz-5.2.1-1
              zlib-1.2.8-4  autoconf-2.69-2  automake-1.15-1  binutils-2.25.1-3  bison-3.0.4-1  fakeroot-1.20.2-1  file-5.24-1
              findutils-4.4.2-6  flex-2.5.39-1  gawk-4.1.3-1  gcc-5.2.0-2  gettext-0.19.5.1-1  grep-2.21-2  groff-1.22.3-3
              gzip-1.6-1  libtool-2.4.6-3  m4-1.4.17-1  make-4.1-1  pacman-4.2.1-2  patch-2.7.5-1  pkg-config-0.28-2
              sed-4.2.2-3  sudo-1.8.14.p3-2  texinfo-5.2-3  util-linux-2.26.2-1  which-2.21-1

Total Installed Size:  438.56 MiB

:: Proceed with installation? [Y/n] 
(96/96) checking keys in keyring                                             [############################################] 100%
(96/96) checking package integrity                                           [############################################] 100%
(96/96) loading package files                                                [############################################] 100%
(96/96) checking for file conflicts                                          [############################################] 100%
( 1/96) installing linux-api-headers                                         [############################################] 100%
( 2/96) installing tzdata                                                    [############################################] 100%
( 3/96) installing iana-etc                                                  [############################################] 100%
( 4/96) installing filesystem                                                [############################################] 100%
( 5/96) installing glibc                                                     [############################################] 100%
( 6/96) installing gcc-libs                                                  [############################################] 100%
( 7/96) installing ncurses                                                   [############################################] 100%
( 8/96) installing readline                                                  [############################################] 100%
( 9/96) installing bash                                                      [############################################] 100%
Optional dependencies for bash
    bash-completion: for tab completion
(10/96) installing gmp                                                       [############################################] 100%
(11/96) installing mpfr                                                      [############################################] 100%
(12/96) installing gawk                                                      [############################################] 100%
(13/96) installing m4                                                        [############################################] 100%
(14/96) installing diffutils                                                 [############################################] 100%
(15/96) installing autoconf                                                  [############################################] 100%
(16/96) installing gdbm                                                      [############################################] 100%
(17/96) installing db                                                        [############################################] 100%
(18/96) installing perl                                                      [############################################] 100%
(19/96) installing automake                                                  [############################################] 100%
(20/96) installing zlib                                                      [############################################] 100%
(21/96) installing binutils                                                  [############################################] 100%
(22/96) installing bison                                                     [############################################] 100%
(23/96) installing attr                                                      [############################################] 100%
(24/96) installing acl                                                       [############################################] 100%
(25/96) installing sed                                                       [############################################] 100%
(26/96) installing cracklib                                                  [############################################] 100%
(27/96) installing libutil-linux                                             [############################################] 100%
(28/96) installing e2fsprogs                                                 [############################################] 100%
(29/96) installing openssl                                                   [############################################] 100%
Optional dependencies for openssl
    ca-certificates [pending]
(30/96) installing libsasl                                                   [############################################] 100%
(31/96) installing libldap                                                   [############################################] 100%
(32/96) installing keyutils                                                  [############################################] 100%
(33/96) installing krb5                                                      [############################################] 100%
(34/96) installing libtirpc                                                  [############################################] 100%
(35/96) installing pambase                                                   [############################################] 100%
(36/96) installing pam                                                       [############################################] 100%
(37/96) installing shadow                                                    [############################################] 100%
(38/96) installing libcap                                                    [############################################] 100%
(39/96) installing coreutils                                                 [############################################] 100%
(40/96) installing libgpg-error                                              [############################################] 100%
(41/96) installing libgcrypt                                                 [############################################] 100%
(42/96) installing lz4                                                       [############################################] 100%
(43/96) installing xz                                                        [############################################] 100%
(44/96) installing libsystemd                                                [############################################] 100%
(45/96) installing util-linux                                                [############################################] 100%
Optional dependencies for util-linux
    python: python bindings to libmount
(46/96) installing fakeroot                                                  [############################################] 100%
(47/96) installing file                                                      [############################################] 100%
(48/96) installing findutils                                                 [############################################] 100%
(49/96) installing flex                                                      [############################################] 100%
(50/96) installing libmpc                                                    [############################################] 100%
(51/96) installing gcc                                                       [############################################] 100%
(52/96) installing bzip2                                                     [############################################] 100%
(53/96) installing pcre                                                      [############################################] 100%
(54/96) installing libffi                                                    [############################################] 100%
(55/96) installing glib2                                                     [############################################] 100%
Optional dependencies for glib2
    python2: for gdbus-codegen and gtester-report
    elfutils: gresource inspection tool
(56/96) installing libunistring                                              [############################################] 100%
(57/96) installing gettext                                                   [############################################] 100%
Optional dependencies for gettext
    git: for autopoint infrastructure updates
(58/96) installing grep                                                      [############################################] 100%
(59/96) installing groff                                                     [############################################] 100%
Optional dependencies for groff
    netpbm: for use together with man -H command interaction in browsers
    psutils: for use together with man -H command interaction in browsers
    libxaw: for gxditview
(60/96) installing less                                                      [############################################] 100%
(61/96) installing gzip                                                      [############################################] 100%
(62/96) installing tar                                                       [############################################] 100%
(63/96) installing libtool                                                   [############################################] 100%
(64/96) installing texinfo                                                   [############################################] 100%
(65/96) installing libatomic_ops                                             [############################################] 100%
(66/96) installing gc                                                        [############################################] 100%
(67/96) installing guile                                                     [############################################] 100%
(68/96) installing make                                                      [############################################] 100%
(69/96) installing expat                                                     [############################################] 100%
(70/96) installing lzo                                                       [############################################] 100%
(71/96) installing libarchive                                                [############################################] 100%
(72/96) installing libtasn1                                                  [############################################] 100%
(73/96) installing p11-kit                                                   [############################################] 100%
(74/96) installing ca-certificates-utils                                     [############################################] 100%
(75/96) installing ca-certificates-mozilla                                   [############################################] 100%
(76/96) installing ca-certificates-cacert                                    [############################################] 100%
(77/96) installing ca-certificates                                           [############################################] 100%
(78/96) installing libidn                                                    [############################################] 100%
(79/96) installing libssh2                                                   [############################################] 100%
(80/96) installing curl                                                      [############################################] 100%
(81/96) installing pth                                                       [############################################] 100%
(82/96) installing npth                                                      [############################################] 100%
(83/96) installing libksba                                                   [############################################] 100%
(84/96) installing libassuan                                                 [############################################] 100%
(85/96) installing pinentry                                                  [############################################] 100%
Optional dependencies for pinentry
    gtk2: for gtk2 backend
    qt4: for qt4 backend
(86/96) installing nettle                                                    [############################################] 100%
(87/96) installing gnutls                                                    [############################################] 100%
Optional dependencies for gnutls
    guile: for use with Guile bindings [installed]
(88/96) installing gnupg                                                     [############################################] 100%
Optional dependencies for gnupg
    libldap: gpg2keys_ldap [installed]
    libusb-compat: scdaemon
(89/96) installing gpgme                                                     [############################################] 100%
(90/96) installing pacman-mirrorlist                                         [############################################] 100%
(91/96) installing archlinux-keyring                                         [############################################] 100%
(92/96) installing pacman                                                    [############################################] 100%
(93/96) installing patch                                                     [############################################] 100%
Optional dependencies for patch
    ed: for patch -e functionality
(94/96) installing pkg-config                                                [############################################] 100%
(95/96) installing sudo                                                      [############################################] 100%
(96/96) installing which                                                     [############################################] 100%
Generating locales...
  en_US.UTF-8... done
  de_DE.UTF-8... done
Generation complete.
----> Attempting to build package...
==> Creating clean working copy [facade]...done
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
:: Starting full system upgrade...
 there is nothing to do
==> Making package: mediterranean-gtk-themes-git v2.03.0.1.r30.g1c33164-1 (Sun Sep 13 05:10:49 EDT 2015)
==> Retrieving sources...
  -> Cloning mediterranean-gtk-themes-git git repo...
Cloning into bare repository '/scratch/here/mediterranean-gtk-themes-git'...
remote: Counting objects: 3774, done.
remote: Total 3774 (delta 0), reused 0 (delta 0), pack-reused 3774
Receiving objects: 100% (3774/3774), 3.72 MiB | 2.68 MiB/s, done.
Resolving deltas: 100% (2305/2305), done.
Checking connectivity... done.
==> Validating source files with sha256sums...
    mediterranean-gtk-themes-git ... Skipped
==> Making package: mediterranean-gtk-themes-git v2.03.0.1.r30.g1c33164-1 (Sun Sep 13 05:10:51 EDT 2015)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Installing missing dependencies...
resolving dependencies...
looking for conflicting packages...

Packages (2) perl-error-0.17024-1  git-2.5.1-1

Total Installed Size:  25.18 MiB

:: Proceed with installation? [Y/n] 
(2/2) checking keys in keyring                                               [############################################] 100%
(2/2) checking package integrity                                             [############################################] 100%
(2/2) loading package files                                                  [############################################] 100%
(2/2) checking for file conflicts                                            [############################################] 100%
(2/2) checking available disk space                                          [############################################] 100%
(1/2) installing perl-error                                                  [############################################] 100%
(2/2) installing git                                                         [############################################] 100%
Optional dependencies for git
    tk: gitk and git gui
    perl-libwww: git svn
    perl-term-readkey: git svn
    perl-mime-tools: git send-email
    perl-net-smtp-ssl: git send-email TLS support
    perl-authen-sasl: git send-email TLS support
    python2: various helper scripts
    subversion: git svn
    cvsps2: git cvsimport
    gnome-keyring: GNOME keyring credential helper
==> Retrieving sources...
==> Validating source files with sha256sums...
    mediterranean-gtk-themes-git ... Skipped
==> Extracting sources...
  -> Creating working copy of mediterranean-gtk-themes git repo...
Cloning into 'mediterranean-gtk-themes-git'...
done.
==> Starting pkgver()...
==> Entering fakeroot environment...
==> Starting package()...
==> Tidying install...
  -> Purging unwanted files...
  -> Removing libtool files...
  -> Removing static library files...
  -> Compressing man and info pages...
  -> Stripping unneeded symbols from binaries and libraries...
==> Creating package "mediterranean-gtk-themes-git"...
  -> Generating .PKGINFO file...
  -> Generating .MTREE file...
  -> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: mediterranean-gtk-themes-git v2.03.0.1.r30.g1c33164-1 (Sun Sep 13 05:10:58 EDT 2015)
==> Installing package mediterranean-gtk-themes-git with pacman -U...
loading packages...
resolving dependencies...
looking for conflicting packages...

Packages (1) mediterranean-gtk-themes-git-v2.03.0.1.r30.g1c33164-1

Total Installed Size:  10.54 MiB

:: Proceed with installation? [Y/n] 
(1/1) checking keys in keyring                                               [############################################] 100%
(1/1) checking package integrity                                             [############################################] 100%
(1/1) loading package files                                                  [############################################] 100%
(1/1) checking for file conflicts                                            [############################################] 100%
(1/1) checking available disk space                                          [############################################] 100%
(1/1) installing mediterranean-gtk-themes-git                                [############################################] 100%
Optional dependencies for mediterranean-gtk-themes-git
    gtk-engines: For GTK2 support
    gtk-engine-murrine: for GTK2 support
    gtk3: for GTK3 support
resolving dependencies...
looking for conflicting packages...

Packages (6) elfutils-0.163-1  licenses-20140629-1  pyalpm-0.7-2  python-3.4.3-2  python-pyelftools-0.23-1  namcap-3.2.5-2

Total Installed Size:  94.01 MiB

:: Proceed with installation? [Y/n] 
(6/6) checking keys in keyring                                               [############################################] 100%
(6/6) checking package integrity                                             [############################################] 100%
(6/6) loading package files                                                  [############################################] 100%
(6/6) checking for file conflicts                                            [############################################] 100%
(6/6) checking available disk space                                          [############################################] 100%
(1/6) installing python                                                      [############################################] 100%
Optional dependencies for python
    python-setuptools
    python-pip
    sqlite
    mpdecimal: for decimal
    xz: for lzma [installed]
    tk: for tkinter
(2/6) installing pyalpm                                                      [############################################] 100%
(3/6) installing licenses                                                    [############################################] 100%
(4/6) installing elfutils                                                    [############################################] 100%
(5/6) installing python-pyelftools                                           [############################################] 100%
(6/6) installing namcap                                                      [############################################] 100%
Checking PKGBUILD
PKGBUILD (mediterranean-gtk-themes-git) W: Missing Maintainer tag
Checking mediterranean-gtk-themes-git-v2.03.0.1.r30.g1c33164-1-any.pkg.tar.xz
----> Adding package to chroot repo...
==> Adding package '/scratch/.chroot64/root/repo/mediterranean-gtk-themes-git-v2.03.0.1.r30.g1c33164-1-any.pkg.tar.xz'
  -> Computing checksums...
  -> Creating 'desc' db entry...
  -> Creating 'depends' db entry...
==> Creating updated database file '/scratch/.chroot64/root/repo/chroot_local.db.tar.gz'
sudo ccm s  15.94s user 1.92s system 78% cpu 22.878 total

Last edited by graysky (2015-09-13 09:12:10)


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Offline

#35 2015-09-13 09:14:44

Slithery
Forum Moderator
From: Norfolk, UK
Registered: 2013-12-01
Posts: 3,441

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

Yep. It builds fine, it just can't create the local repo in the chroot.


No, it didn't "fix" anything. It just shifted the brokeness one space to the right. - jasonwryan
Closing -- for deletion; Banning -- for muppetry. - jasonwryan

aur - dotfiles

Offline

#36 2015-09-13 09:32:11

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 9,853
Website

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

I don't know... it worked for me.  BTRFS?  Can you try creating one else where?


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Offline

#37 2015-09-15 07:09:29

Slithery
Forum Moderator
From: Norfolk, UK
Registered: 2013-12-01
Posts: 3,441

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

All sorted.

I had some non-default locations set in makepkg.conf for PKGDIR and BUILDDEST, reverting these fixed my problem.


No, it didn't "fix" anything. It just shifted the brokeness one space to the right. - jasonwryan
Closing -- for deletion; Banning -- for muppetry. - jasonwryan

aur - dotfiles

Offline

#38 2015-09-22 23:40:16

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 9,853
Website

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

Does anyone use distcc and ccm?  I have modified it now support distcc clusters.  It's currently in my unstable branch if anyone would like to try it and report back.  I will make an official release once I do some more testing.

https://github.com/graysky2/clean-chroo … e/unstable
Diff against 2.68: https://github.com/graysky2/clean-chroo … ...c6b73da

Notes:
1) You need to diff ~/.config/clean-chroot-manager.conf against the new /usr/share/clean-chroot-manager/ccm.skel to make it's up-to-date.
2) Only ccm64 has been modified to date.

EDIT: Released in v2.69 live in the AUR.

Last edited by graysky (2015-09-24 15:27:27)


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Offline

#39 2016-11-18 00:02:05

Thaodan
Member
From: Dortmund, Nordrein-Westfalen
Registered: 2012-04-28
Posts: 446

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

Could you add support for ccache?


Linux odin 3.13.1-pf #1 SMP PREEMPT Wed Mar 5 21:47:28 CET 2014 x86_64 GNU/Linux

Offline

#40 2016-11-18 00:04:42

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 9,853
Website

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

@Thaodan - No can do: #23.

Last edited by graysky (2016-11-18 00:04:54)


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Offline

#41 2016-11-18 04:03:05

eschwartz
Trusted User/Bug Wrangler
Registered: 2014-08-08
Posts: 2,853

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

Why doesn't ccache work in a chroot? If you mean, it doesn't work in makechrootpkg (because makechrootpkg cleans the chroot between uses) then you can simply bind a ccache directory into the chroot...

Works for me.


Managing AUR repos The Right Way -- aurpublish (now a standalone tool)

Offline

#42 2016-11-18 23:20:57

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 9,853
Website

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

Need to evaluate the new PR.  I honestly do not use ccache.


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Offline

#43 2017-03-10 08:05:48

inglor
Member
Registered: 2008-07-22
Posts: 76

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

I'm struggling to understand how to properly use this on a btrfs system. The first time I build this it's fine. The second time though there are two subvolumes which are not deleted with nuke.

$ sudo btrfs subvolume list /
ID 454 gen 121253 top level 5 path scratch/chroot64/root
ID 455 gen 121265 top level 5 path scratch/chroot64/inglor
ID 456 gen 121255 top level 455 path scratch/chroot64/inglor/var/lib/machines
$ sudo ccm64 n
==> Nuking the chroot...
inglor@tiamat ~/cowerPkg/firefox-esr$ sudo btrfs subvolume list /
ID 455 gen 121266 top level 5 path scratch/chroot64/inglor
ID 456 gen 121255 top level 455 path scratch/chroot64/inglor/var/lib/machines

So the next time I try to build something it fails with an error such as:

$ sudo ccm64 s                                                                                    
----> No chroot has been created so making one now...
Create subvolume '/scratch/chroot64/root'
==> Creating install root at /scratch/chroot64/root
==> Installing packages to /scratch/chroot64/root
:: Synchronizing package databases...
 core                                                    123.8 KiB  4.03M/s 00:00 [##############################################] 100%
[..]
[log truncated]
[..]
(98/98) installing which                                                          [##############################################] 100%
:: Running post-transaction hooks...
(1/2) Updating the info directory file...
(2/2) Rebuilding certificate stores...
Initializing machine ID from random generator.
Generating locales...
  en_US.UTF-8... done
  de_DE.UTF-8... done
Generation complete.
----> Attempting to build package...
==> Creating clean working copy [inglor]...ERROR: cannot delete '/scratch/chroot64/inglor': Directory not empty
==> ERROR: Unable to delete subvolume /scratch/chroot64/inglor

Is that something that ccm should take care (remove the subvolumes)? Or am I using it wrongly?

Thanks

Offline

#44 2017-03-13 00:15:33

eschwartz
Trusted User/Bug Wrangler
Registered: 2014-08-08
Posts: 2,853

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

This is a well-known problem with devtools itself, it happens anytime systemd is installed in the chroot.
btrfs does not know how to recursively delete subvolumes.

My workaround is to mask /usr/lib/tmpfiles.d/systemd-nspawn.conf (which is the sole cause of unasked-for subvolumes). However, there is some code in https://git.archlinux.org/devtools.git/log/?h=heftig which should find and delete subvolumes recursively.


Managing AUR repos The Right Way -- aurpublish (now a standalone tool)

Offline

#45 2017-03-13 08:27:25

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 9,853
Website

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

I disabled BTRFS support until this is ressolved as I too couldn't find a reliable method to recursively delete the subvols in the proper order... what is the reasoning behind taking a snapshot anyway??


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Offline

#46 2017-03-13 12:15:59

inglor
Member
Registered: 2008-07-22
Posts: 76

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

graysky wrote:

I disabled BTRFS support until this is ressolved as I too couldn't find a reliable method to recursively delete the subvols in the proper order... what is the reasoning behind taking a snapshot anyway??

I suppose keep space usage to minimum.

Offline

#47 2019-04-13 12:37:15

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 7,351

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

I've started using ccm and sofar do like it.

There are 2 things I do miss though :
- ccache support
- makepkg --nocheck option

Edit :
looks like the COMPRESSXZ setting from /etcmakepkg.conf isn't used ?

Last edited by Lone_Wolf (2019-04-13 13:24:16)


Multi-init booting with apg Openrc and systemd coexisting
Automounting : not needed, i prefer pmount
Aur helpers : makepkg + my own local repo === rarely need them

Offline

#48 2019-04-13 14:12:14

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 9,853
Website

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

Lone_Wolf wrote:

- ccache support
- makepkg --nocheck option
Edit :
looks like the COMPRESSXZ setting from /etcmakepkg.conf isn't used ?

- I looked into ccache a while ago.  At that time, I believe it wasn't support in chroots.  Is that still true?
- Not sure what you mean about the --nocheck option.
- COMPRESSXZ in honored as are all others you defined including the COMPRESSZST.  What problem are you experiencing with it?


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Offline

#49 2019-04-14 13:23:42

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 7,351

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

-ccache
https://wiki.archlinux.org/index.php/Cc … echrootpkg
That indicates it's supported by devtools .

- COMPRESSXZ
I configure it to compress multicore, had the impression ccm was slower with compresssion then i'm used to.
devtools doesn't use COMPRESS* , unless it's in a makepkg.conf that's get pulled into the chroot.
https://bbs.archlinux.org/viewtopic.php?id=245507
If ccm does support it, you should mention that somewhere.



-   nocheck
https://wiki.archlinux.org/index.php/Cr … es#check()

Some of the packages I maintain/build have check() functions that fail and build is aborted.
For VCS packages this happens often, but a test failure doesn't mean the package is useless .

example

# results of llvm-check from my aur llvm-git package
  Expected Passes    : 29096
  Expected Failures  : 145
  Unsupported Tests  : 1203
  Unexpected Failures: 58

Some functionality doesn't work, but vast majority does.
Adding the --nocheck option to makepkg commandline tells makepkg to skip the check() function and continue to package() functions.


Multi-init booting with apg Openrc and systemd coexisting
Automounting : not needed, i prefer pmount
Aur helpers : makepkg + my own local repo === rarely need them

Offline

#50 2019-04-14 14:45:33

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 9,853
Website

Re: Clean-chroot-manager: build packages in a clean chroot (64 and 32-bit)

* For ccache, I will look into it, others have asked for me and there is actually a PR out there to do it.  I just never wanted to make time to learn about ccache and to test the PR tongue

* I'm not sure about devtools not using COMPRESS* ... from what I see, when building with the devtools scripts, you're calling makepkg within the chroot and compression is being handled by /usr/share/makepkg/util/compress.sh therein.  Values you specify in /etc/makepkg.conf in the chroot take precedence over the values hard-coded in that util script, so to make the change, we need to either:

1) Use a custom makepkg.conf outside of the chroot (a feature already asked for) or
2) Allow an option in the ~/.config/ccm.conf to do it automatically

* I see, you want to have the option to build passing the nocheck flag.  That should be easy to add.

Last edited by graysky (2019-04-14 14:46:06)


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Offline

Board footer

Powered by FluxBB