Commit graph

233 commits

Author SHA1 Message Date
Juan RP
ff412882de Improve messages while entering into the chroot.
--HG--
extra : convert_revision : 13354e2dc1a3c13071a9b662f74609ca79a4dd78
2010-04-27 23:22:48 +02:00
Juan RP
522437b90f Multiple improvements for XBPS_PREFER_BINPKG_DEPS.
- Added a new var XBPS_REPO_LIST for the conf file, to specify
  a list of remote repositories to be used in a masterdir.
- Install all required binpkgs in one pass, if that fails install
  one of them at every pass.
- Fixed xbps-src-chroot-helper to properly catch SIG{INT,QUIT}
  when -m is specified.
- Misc cosmetics improvements.

--HG--
extra : convert_revision : 0ad7d559477ccc1fc04ab09deb791343ee453de6
2010-04-27 23:09:08 +02:00
Juan RP
da63915397 Fix 'xbps-src -m' to mount stuff in the correct place.
--HG--
extra : convert_revision : 930efb41ec285f2b65310629fe758397c178d681
2010-04-27 21:52:36 +02:00
Juan RP
cb582f7373 xbps-src: add -m flag and make-repoidx target.
* -m flag to specify a custom XBPS_MASTERDIR, overwritting the value
  from xbps-src.conf.
* make-repoidx target to create a package index plist file for
  the local repository associated with a masterdir, or one specified
  by the -p flag.

--HG--
extra : convert_revision : dbd502b532fd49cd17a79a187488a1e92f361ee0
2010-04-27 01:34:19 +02:00
Juan RP
e3dc3e3066 Added native utilities to mount/umount/chroot via capabilities(7).
Three new helpers will now be installed into ${libexecdir}:
 - xbps-src-capchroot needs to have set CAP_SYS_CHROOT ep.
 - xbps-src-chroot-cap{,u}mount: needs to have set CAP_SYS_ADMIN ep.

That means that libcap and setcap(8) are now required to install
xbps-src and use it as normal user.

--HG--
extra : convert_revision : 586d6526079e085f86bf3e393459d429f6f0ef99
2010-04-26 14:15:49 +02:00
Juan RP
6673252679 Infrastructure changes to simplify the conf file.
* Removed the following vars from the conf file: XBPS_BUILDDIR,
  XBPS_PACKAGESDIR and XBPS_SRCDISTDIR. They are always relative
  to XBPS_MASTERDIR and cannot be changed.
* Removed XBPS_INSTALLDIR, it was unused in the code.
* Prepend /tools/bin in PATH for the chroot.
* Don't register a repo in the chroot if the XBPS_PREFER_BINPKG_DEPS
  is not set.

--HG--
extra : convert_revision : 4df03ffa64f0bbf81cd1dd0baf38f1b7e4f47549
2010-04-26 02:51:48 +02:00
Juan RP
7d9172b9ea Set $XBPS_FETCH_DONE after extracting not fetching.
--HG--
extra : convert_revision : fd65f2da02fd6da2c8a9f169f777d7511888704c
2010-04-24 12:52:29 +02:00
Juan RP
4240afc516 Only check distfiles once, not every time.
--HG--
extra : convert_revision : 6e3a5e715aea21956395018360cae66b8f211d67
2010-04-23 18:45:47 +02:00
Juan RP
0d68a49660 Multiple changes in the infrastructure for improving the (un)stow stuff.
- Added pre_remove/post_remove/post_stow support for templates.

- When stowning pkgs, symlink all files into the chroot. This only works
  for packages that need to be built on it, also templates that set
  stow_copy will copy its files, or selectively via stow_copy_files.

--HG--
extra : convert_revision : 51f47120a5478ceb1319bde01c3ab999f637b359
2010-04-23 15:25:03 +02:00
Juan RP
3fa8a3a284 install_pkg(): exit immediately on errors.
--HG--
extra : convert_revision : ac0332748a5390d3324329a2aa5630ef35e0bf7d
2010-04-22 13:40:53 +02:00
Juan RP
1874cbadda shutils/metadata: return if required stuff fails.
--HG--
extra : convert_revision : c8225a2a9ace45bbc7eed5b309e26336ce94f9ae
2010-04-22 12:06:16 +02:00
Juan RP
70f7b0aaf4 shutils/stow_funcs: use rm -f.
--HG--
extra : convert_revision : d669d311bd19ba41fd6244a62e3430a2c4f71947
2010-04-22 09:02:49 +02:00
Juan RP
33770e8bbc When using run_func() we don't care about stderr output.
--HG--
extra : convert_revision : 618d1c2eda49e1c55abec28d36f3430f37b9b867
2010-04-22 06:50:11 +02:00
Juan RP
8536af44ef run_func: use simply 'type foo', -t is a bash extension.
--HG--
extra : convert_revision : 8a94c0a961f4819bfada61823158c81965d31908
2010-04-21 16:48:58 +02:00
Juan RP
b0c64c181b shutils/metadata.sh: use find(1) -follow.
--HG--
extra : convert_revision : 1815c225aab07ca970d14f1340439d67fee2d88a
2010-04-21 15:29:23 +02:00
Juan RP
5d9675e435 shutils/metadata.sh: use find and readlink rather than find -L.
--HG--
extra : convert_revision : 489747f192448a175f24cee7762a51e2568a1b54
2010-04-21 11:54:14 +02:00
Juan RP
c95a77a60c shutils/extract_func.sh: check that distfiles are there.
--HG--
extra : convert_revision : 210dd5e1204adcd5c1eee91af76000c1e08d5039
2010-04-18 18:50:43 +02:00
Juan RP
94c0200541 Reset some vars in subpkgs.
--HG--
extra : convert_revision : cfe73e71aa363f5d297660925cd7b29e731f4951
2010-04-12 19:07:24 +02:00
Juan RP
ec0f955d70 Added gconf-schemas new trigger.
Two new vars can be used in templates to handle GConf schemas files,
gconf_entries and gconf_schemas.

--HG--
extra : convert_revision : 315756b79166538ef0efae5a70c7ec8d9f7f61d9
2010-04-11 12:50:35 +02:00
Juan RP
2f5d1187a3 shutils: prepare for upcoming "$conflicts" support.
--HG--
extra : convert_revision : 021b9ea71ef7dbd8bcdef844a9e1379613db88d3
2010-03-08 10:52:55 +01:00
Juan RP
73dab0587b verify_rundeps: handle same shlib provided by multiple pkgs.
--HG--
extra : convert_revision : 5d021d453acd0fdf440cbafbec89613340e9e349
2010-03-08 10:47:25 +01:00
Juan RP
a4070a27a9 Add "$noverifyrdeps" to disable verifyrundeps code.
--HG--
extra : convert_revision : 07510b345b3831360d0ef7697be98103dc465181
2010-01-29 05:41:10 +01:00
Juan RP
9cd358be11 shutils: remove mktoolchain.sh, outdated and useless.
--HG--
extra : convert_revision : bc4cf29c4e8d76f80fba322e545eaa81b10a7062
2010-01-29 04:19:13 +01:00
Juan RP
259d7f0ce7 shutils/metadata.sh: if xbps-uhelper sanitize-plist fails, return error.
--HG--
extra : convert_revision : 949a19e83aff79731b2d315669114568fe4f81aa
2010-01-28 19:05:03 +01:00
Juan RP
bc01681ea7 shutils/metadata.sh: replace '><' in maintainer obj with &[gl]t;
--HG--
extra : convert_revision : 6de3978f0cc7442bec1fc08523387884ae8809c9
2010-01-27 03:21:53 +01:00
Juan RP
0da86577ab Changed $replaces to accept pkg patterns, like Add_dependency().
Changed all packages using $replaces to the new format and bump
the revision. Require XBPS utils >= 20100121 for this to work.

--HG--
extra : convert_revision : 7593b3cb7465f7613f48aba0f2e86cdcd5430ac0
2010-01-21 03:33:26 +01:00
Juan RP
740ed4e896 shutils/metadata: fix incorrect syntax in subst $replaces values.
--HG--
extra : convert_revision : f57eaffc05e99b021aeb77c213b8ca13121b978e
2010-01-20 15:10:23 +01:00
Juan RP
9b4d6d474e shutils/metadata: fix creation of scripts due to false positive.
--HG--
extra : convert_revision : 6fecbcf1ae9f6addd319cece6bf8731e23efc196
2010-01-17 22:22:12 +01:00
Juan RP
8077fd7472 shutils: bump copyright year for touched files in 2010.
--HG--
extra : convert_revision : 967ce0c8f98299db161ccb746a9e633ca0457640
2010-01-17 08:50:36 +01:00
Juan RP
5f94abb06a shutils/buildvars_funcs: don't set useless vars in the chroot.
--HG--
extra : convert_revision : b75790e760fe12b2ac1d1f8dbc9c01aa3683e416
2010-01-17 08:47:14 +01:00
Juan RP
eeeebb5915 shutils/metadata_scripts: do not create empty INSTALL/REMOVE scripts.
--HG--
extra : convert_revision : 149185cfd371a88802cc4e05c06fbe006b7cc006
2010-01-16 06:13:12 +01:00
Juan RP
e57940985e Added support to build pkgs in the chroot as normal user via capchroot.
Please read the comment in xbps-src.conf to use it. Fully tested
and working nicely, probably some pkgs will need minimal changes.

--HG--
extra : convert_revision : 820ad6d48aa74cf5b6db1871adea750acccaa82f
2010-01-16 02:11:44 +01:00
Juan RP
dec6b4651e shutils/build_funcs: "custom-install" pkgs can use do_build() func.
That means that you can now build "custom-install" build_style
packages in two stages, one for building and one for installation.

--HG--
extra : convert_revision : 4fd76075a1a0bd173854272437c6ca3b263a6f62
2010-01-16 00:04:40 +01:00
Juan RP
ae9fe929a4 shutils/pkgtarget_funcs: don't exit if pkg is already installed.
--HG--
extra : convert_revision : 3f7a084f70f9cfb65e4db28f478b0a44b2083d2d
2010-01-15 00:15:39 +01:00
Juan RP
6f5aa28a94 shutils/builddep_funcs: install from source if binpkg failed.
--HG--
extra : convert_revision : 2d902d3ccaf92fdc42d3be0b789c16412da516f1
2010-01-15 00:14:29 +01:00
Juan RP
0cab41b261 shutils/chroot: sync groups list with shadow pkg.
--HG--
extra : convert_revision : 0fb123e3e4400ff278c26a98b657ff349cb0f93a
2010-01-14 18:52:14 +01:00
Juan RP
3cdafeb9ca Added initial support to install binpkgs to resolve builddeps.
if XBPS_PREFER_BINPKG_DEPS is set in xbps-src.conf, the local binpkg
repo in XBPS_PACKAGESDIR will be used to install binpkgs.

To use this feature you'll need xbps utils >= 20100114 from head.

--HG--
extra : convert_revision : 7317e0e2741997007e81ed478f819c36e4858e5d
2010-01-14 17:45:41 +01:00
Juan RP
f29a2b53d4 shutils/metadata.sh: reset {sgml,xml}_{entries,catalogs} for subpkgs.
--HG--
extra : convert_revision : 491a636c86b6c5baa720f616e76a21e3a45f28a3
2010-01-14 16:24:40 +01:00
Juan RP
9d087a2119 configure_funcs.sh: skip python-module pkgs.
--HG--
extra : convert_revision : 7da164a93545c7f5dc8cc160a69e461cd70aae2f
2010-01-11 17:58:52 +01:00
Juan RP
0e5c0a0bbe xbps-src: added code to verify required pkg rundeps.
Every pkg containing shared libs must register them in
common/mapping_shlib_binpkg.txt, this is where the code looks
for transforming required libs to required binpkgs.

The code will also report if a required rundep is missing from
pkg run_depends array and will suggest to add some lines to
the package template.

--HG--
extra : convert_revision : 2d26d45b8e8f62218473abdbed7cc7aab7074e28
2010-01-10 17:09:23 +01:00
Juan RP
cf604ea6ca common_funcs.sh: add msg_*_nochroot funcs.
--HG--
extra : convert_revision : cd4750816d89848c7496b564536a56a86f2ab978
2010-01-10 14:34:07 +01:00
Juan RP
667095b4ae xbps-src: remove XBPS_DESTDIR from conf file.
Rather than make it configurable, put this always under
XBPS_MASTERDIR/pkg-destdir, so you don't have to care about it anymore.

--HG--
extra : convert_revision : 34cc3102272bfcf95b2fc3a8961cb9cb2429ab91
2010-01-09 23:35:11 +01:00
Juan RP
3e8bd5917c xbps-src: remove non-working -u flag, make -C work in chroot.
--HG--
extra : convert_revision : a9fb1c09b4d29f35888abf9615c40d3cccbeb239
2010-01-09 15:49:36 +01:00
Juan RP
c18153b92c Add $create_wrksrc for use in templates.
If set the specified wrksrc will be created and its distfiles will be
extracted into it.

--HG--
extra : convert_revision : c6b0ff2634a9f764d45fcdd97ecee5d32c8a7ace
2010-01-04 16:05:13 +01:00
Juan RP
1667c062b8 Fix conditionals for $build_wrksrc.
--HG--
extra : convert_revision : c85c8bed3cf76b909ae08b40bb73e9585e9656dc
2009-12-30 22:33:30 +01:00
Juan RP
9b74f9ebc8 Added new var "build_wrksrc" for use in templates.
This var sets a relative path to $wrksrc that is used to
configure/build/install a package.

--HG--
extra : convert_revision : 690f4d435f3d4e6a9228f7f5f09ecf8b490a273a
2009-12-30 22:16:33 +01:00
Juan RP
925e22e0f9 shutils/make-binpkg: reset noarch for subpkgs.
--HG--
extra : convert_revision : dec3deb9321b1689b79a6d9035f947cd15088ca5
2009-12-27 16:48:27 +01:00
Juan RP
1e8ba0a3ef shutils/chroot: copy host /etc/localtime if found.
--HG--
extra : convert_revision : d3961bbaa2b8fd51d59d5ccd4e2023b2cf31a60a
2009-12-24 01:10:08 +01:00
Juan RP
26c9441b87 extract_funcs: always extract all distfiles into builddir.
--HG--
extra : convert_revision : 0ba3269604f8d0059fda5a36c30eac2d7e17d6c3
2009-12-23 15:41:58 +01:00
Juan RP
465f9229c8 python-module: enable configure and build stages.
--HG--
extra : convert_revision : 0f12cbd184a51cae91f580be3e51c285e4de5c7a
2009-12-23 02:07:11 +01:00
Juan RP
5d95da2067 metadata.sh: fix scripts in subpkgs, add shadow rundep if $system_accounts set.
--HG--
extra : convert_revision : 80e31c482ea3fd6c3ed91a6758a09c54820efcd5
2009-12-19 04:58:25 +01:00
Juan RP
a88cee9039 make-binpkg: also add symlinks to dirs!
--HG--
extra : convert_revision : 75d65479ff0f7c59b8dbfbe92ed158018458966b
2009-12-19 04:57:39 +01:00
Juan RP
780381e8ae extract_distfiles(): recognize .tar.xz distfiles, reorganize code.
--HG--
extra : convert_revision : 18cc1457f76ddbaadfec8557ab36bd2a67bcff03
2009-12-13 13:38:53 +01:00
Juan RP
4c2cc8b588 Add a trigger to (un)register system user/groups.
The following vars can be used for this:

- system_accounts="foo blah"
- foo_homedir, foo_shell, foo_descr, foo_groups.

--HG--
extra : convert_revision : bc7d002e00abc5c84f83a3716a8ecf97f9c9ff24
2009-12-11 12:03:21 +01:00
Juan RP
1a7a23a4cc extract_distfiles(): after extracting if $wrksrc doesn't exist, create
it.

--HG--
extra : convert_revision : b72bf0188c83e9a676448ba5da3ca1b25c4df493
2009-12-06 01:46:32 +01:00
Juan RP
d27595922c Added a new "preserve" var for build templates.
When a package has this defined, its files won't be removed after
a removal or upgrade process. This should be used in a few cases,
mostly for the kernel pkg to always preserve a working kernel+modules.

--HG--
extra : convert_revision : 03b19d1df2b029b6671865072b4d9529b0b86aa4
2009-12-02 03:20:26 +01:00
Juan RP
c077559a89 Improve build templates by not having to set ${triggers} in some cases.
There's no need to update triggers in the following cases:
 * Packages installing stuff into /usr/share/applications.
 * Packages setting $gtk_iconcache_dirs.
 * Packages setting $font_dirs.
 * Packages setting ${sgml,xml}_entries.

--HG--
extra : convert_revision : 11c74b41f8cf474e9bf4dbb961b1aa9c6f6540bf
2009-12-02 01:55:51 +01:00
Juan RP
c6d8fa2eba reset_tmpl_vars: add missed font_dirs.
--HG--
extra : convert_revision : 25993a79cd7a0ed9d70bd094f707a193a3fbf0b8
2009-11-30 20:45:42 +01:00
Juan RP
0194df5512 xbps-src: fix properly refusing to install installed pkgs.
--HG--
extra : convert_revision : e8013bdb452c482331b19bed2199c58fb79f43fc
2009-11-26 23:59:25 +01:00
Juan RP
5ecfdb4c2f xbps-src: refuse to install a pkg already installed.
--HG--
extra : convert_revision : dae07c3aa547ac13bc955dea44049f31242c02ed
2009-11-26 23:33:45 +01:00
Juan RP
c6f4aa322b Use the new xbps-uhelper bin, require xbps utils 20091124-1.
--HG--
extra : convert_revision : d29be962c344de65b805f4690afc335db32b541e
2009-11-24 12:21:49 +00:00
Juan RP
a94b2511d0 shutils/make-binpkg.sh: cleanup while creating unfinished binpkgs.
- If creating the binpkg fails remove the file, the same if
  SIGINT is caught.

--HG--
extra : convert_revision : 113ce6580cc514c791835d87bf572a566b3341f8
2009-11-23 10:50:18 +00:00
Juan RP
faed7daa5c shutils/chroot.sh: run prepare_chroot before anything else!
--HG--
extra : convert_revision : 0ca996d5cca9028b33bdbb49c7078c9443e592ad
2009-11-23 06:32:42 +00:00
Juan RP
dbb02a1930 Kill run_template(), use setup_tmpl() instead.
--HG--
extra : convert_revision : 6aaf4f637d28f476e88c05ee8608e418642a01fa
2009-11-23 05:30:04 +00:00
Juan RP
5c2f6d0982 xbps-src: remove cross-compiler stuff, won't work.
--HG--
extra : convert_revision : b1cb584d15bceca0b84adfc5f688facf6fe978a2
2009-11-23 02:21:32 +00:00
Juan RP
ff49f2b52a shutils/metadata.sh: fix multiple inclusion of subpkg templates.
--HG--
extra : convert_revision : 2a1d8c9996d1790817c672e66293be3b63480768
2009-11-23 02:13:21 +00:00
Juan RP
16808930aa xbps-src/shutils: remove unused $origin_tmpl stuff.
--HG--
extra : convert_revision : de50b832bdd8fc64c1a94856248e749eafac84c9
2009-11-23 02:12:38 +00:00
Juan RP
85cc462e1d Major infrastructure changes, part 2.
* Moved helpers, common and triggers dirs into xbps-src, where
  they belong.
* Renamed the templates dir to srcpkgs, it was so redundant before.
* Make it possible to add subpkgs with no restriction in names, for
  example udev now has a subpkgs called "libgudev". Previously
  subpkgs were named "${sourcepkg}-${pkgname}".
* xbps-src: changed to look for template files in current directory.
  That means that most arguments from the targets have been removed.
* xbps-src: added a reinstall target, to remove + install.
* xbps-src: do not overwrite binpkgs by default, skip them.

And more that I forgot because it's a mega-commit that I've been
working for some days already...

--HG--
extra : convert_revision : 0f466878584d1e6895d2a234f07ea1b2d1e61b3e
2009-11-22 08:31:44 +01:00
Juan RP
3c58e3ad40 shutils/builddep_funcs.sh: conditionalize info msg.
--HG--
extra : convert_revision : 54d778eab5904fcda0a0d0e506b00f0ee046cbaf
2009-11-19 17:56:27 +01:00
Juan RP
5ddea61b22 Don't strip off binaries in pkgs with noarch set.
--HG--
extra : convert_revision : 962dcb897e2f6074631a358cd0c3ef5bbb6f3b14
2009-11-09 03:43:01 +01:00
Juan RP
2c53035fb7 Added support for extended pkgdep version matching.
xbps from launchpad head branch has gained support for extended
pkg version matching, as specified in:

https://blueprints.launchpad.net/xbps/+spec/improved-version-matching

Now it's required to specify the operator(s) for required versions
in the depends files and "Add_dependency" option in build templates.

xbps-src now requires xbps utils 20091107.

--HG--
extra : convert_revision : fc09fa707483a75e0b6f68445721fc1a9166cdad
2009-11-07 05:01:00 +01:00
Juan RP
8c89fbd90b Fixed launchpad #474467 bug.
Make xbps-base-chroot depend on bash and use it for the chroot
environment. Depending in host's bash wasn't a good idea...

--HG--
extra : convert_revision : dfff2287dec5c3fb64725e601f70fe4a2ab2db98
2009-11-05 17:51:26 +01:00
Juan RP
f4a2a9aebe builddep_funcs.sh: use $XBPS_CMPVER_CMD.
--HG--
extra : convert_revision : 079d2d36a9fd7454ec6f4e53a4f917b7f92334a3
2009-11-05 14:26:15 +01:00
Juan RP
faf1d22b22 builddep_funcs.sh: fix local var def.
--HG--
extra : convert_revision : 5066c52062d1dff62a97662f0d78bd0bdd40fd79
2009-11-02 00:25:50 +01:00
Juan RP
a1a9d65822 builddep_funcs.sh: remove unused func, wrap long line.
--HG--
extra : convert_revision : 28a65da6438a2b756be93f7c9d9574aba9d417a2
2009-11-02 00:22:40 +01:00
Juan RP
9c72819434 pkgtarget_funcs.sh: fix a comment.
--HG--
extra : convert_revision : d1b5fe808705b449eb9b9ece303b8a108ad94d26
2009-11-02 00:22:05 +01:00
Juan RP
1ebe5e6b5e Mega-commit removing deps in xbps-base-chroot.
xbps-src:
  * ALWAYS use the static bins, to avoid breakage in the chroot.
  * Remove XBPS_FETCH_CMD. Use xbps-fetch (static) now that it's
    useful to download all distfiles in xbps-base-system.
  * Use busybox in the chroot and create links in /usr/local/bin
    at creation time. This helps to remove many packages that
    had problems with host/target libs (acl, attr, libarchive, etc).

build templates:
  * Add explicit gettext and texinfo build dependencies in all
    packages that need them, because they aren't built anymore
    by xbps-base-chroot.
  * Fixed some packages using build_style=gnu_makefile, that were
    broken because pre/post_configure() is not executed for a while,
    they should use pre/post_build() instead.

--HG--
extra : convert_revision : 0eaaf4917fd824710d0895e0c984bbc236b0cdf8
2009-10-30 22:14:09 +01:00
Juan RP
e2b7c462c1 shutils/metadata.sh: use xbps static bins.
--HG--
extra : convert_revision : cc7d591b7913eb7a301dc3fce0a59f29c54ccd88
2009-10-29 16:35:22 +01:00
Juan RP
22774572da xbps-src: use the xbps static bins.
--HG--
extra : convert_revision : 7b8f360971f28668dae1032fccdc5819bafe5054
2009-10-27 16:52:40 +01:00
Juan RP
ef3da70478 xbps-src: build binpkgs compressed with xz by default.
- Added two new options for xbps-src.conf:
    XBPS_COMPRESS_CMD by default set to xz.
    XBPS_COMPRESS_LEVEL by default not set.

Change these options to override the behaviour.

--HG--
extra : convert_revision : cbf096e3ff8c290ec0dfd96e5e7cf81f82cbf26a
2009-10-20 15:19:09 +02:00
Juan RP
de15937c98 shutils/make-binpkg.sh: make 'build-pkg' target build all subpkgs.
--HG--
extra : convert_revision : 9b1f6d0dcbf65550e393d00eb3bea8939a644055
2009-10-20 10:06:02 +02:00
Juan RP
72554fbe8a xbps-src/shutils/chroot.sh: fix path to the shutils.
--HG--
extra : convert_revision : 7d06e6083358b1cbfd6733989d966e2a5a417bf0
2009-10-18 11:31:56 +02:00
Juan RP
745192ef37 Added xbps-src and its associated code again.
It's better to keep it outside of XBPS.

--HG--
extra : convert_revision : 34f9c316585b972158d6ee55492c02c9bc5d3fcd
2009-10-18 11:17:26 +02:00