Commit Graph

178 Commits

Author SHA1 Message Date
Juan RP 1986dc93f3 xbps_remove_pkg: another missing rootdir check.
--HG--
extra : convert_revision : 1c2699c4d11073d49a01936c79a95968b0fb4b93
2009-08-10 10:29:17 +02:00
Juan RP 90b9325fbd xbps_remove_pkg: don't unregister pkg while updating.
--HG--
extra : convert_revision : 94b1a99f3799838f676a496028032347b40210d3
2009-08-10 00:33:11 +02:00
Juan RP a5829d5467 Fix xbps-bin install without using a rootdir.
--HG--
extra : convert_revision : 7d9b697caa3f6d5c8b3d07462093c33c7fbfea29
2009-08-10 00:08:58 +02:00
Juan RP 350566818c xbps_find_new_pkg: always set pkg state.
--HG--
extra : convert_revision : e259f424344c9aa618e9ba515a4d39a8b9a11655
2009-08-09 23:34:07 +02:00
Juan RP 9b7a658e44 xbps_remove_pkg: unregister and remove metadata in updates for now.
--HG--
extra : convert_revision : c5c8dc4c32199b1f0e4e26883cadea379a6e4239
2009-08-09 23:33:13 +02:00
Juan RP 6e9e92bd35 lib/unpack.c: remove redundant check against rootdir.
--HG--
extra : convert_revision : f20606fd343dd04d965d2fe2069d4e07c6dfab0c
2009-08-09 04:35:09 +02:00
Juan RP ceca72fca9 Add a printf for previous to know when that happens.
--HG--
extra : convert_revision : 9d716b7906f2ef7226afb608361e1286f45ce355
2009-08-09 03:26:56 +02:00
Juan RP a9479ad75a When removing a package, continue if there are missing files.
--HG--
extra : convert_revision : 2324cdb902b7aeeabe745e70341da3951efb749e
2009-08-09 02:45:35 +02:00
Juan RP f8819462b0 lib/Makefile: fix indentation.
--HG--
extra : convert_revision : 22a071ea6d01aa3eae03d3dcd825f6ac80d9fe9c
2009-08-08 22:56:08 +02:00
Juan RP 17404bdb42 Mega-commit with improvements and changes done in the past days.
- Introduce package states: unpacked, broken, installed, etc.
  Not yet finished, only unpacked and installed are used for now.

- Move package metadata files in binary packages directly to
  the top directory, this speeds up some ops and makes easier to
  continue working in future changes.

- xbps-bin: -C flag to check the hash of package files has been
  superseded by the 'check' target, which verifies the integrity
  of an installed package.

- Use the 'essential' object when upgrading packages, overwritting
  current files. This is needed for critical packages like sh, libc
  and others.

- Miscellaneous tweaks and improvements thorough the code.

--HG--
extra : convert_revision : 2073fcc123efc24b3e9327b5e22aa91752f20df6
2009-08-08 22:29:48 +02:00
Juan RP 75cac4a637 xbps_find_orphan_packages: simplify and make it report the correct order.
--HG--
extra : convert_revision : f3b09a258e4cd0bdd310935b51742a09e8db4409
2009-08-08 22:16:45 +02:00
Juan RP 8b2fe3efe3 Introduce xbps_callback_array_iter_reverse_in_dict().
This function works by iterating an array in a dictionary
in reverse order, i.e from down to top.

--HG--
extra : convert_revision : 5e655c2edf3d42453f16830e2e944c7f6e2cd974
2009-08-08 22:14:42 +02:00
Juan RP 9affd1491a xbps_find_orphan_packages: use xbps_prepare_regpkgdb_dict().
--HG--
extra : convert_revision : 5c7b61ade09df674256ef9fb8f3b6d3e8d962ab3
2009-08-08 15:19:47 +02:00
Juan RP bca1fd8b47 xbps_file_chdir_exec: only chroot(3) if uid == 0 and /bin/sh exists.
--HG--
extra : convert_revision : f07bf2f511d896fc6f6c731b5ef04f3eebcd2eaa
2009-08-02 11:04:46 +02:00
Juan RP 67be65f444 xbps_prepare_regpkgdb_dict: fix a memleak.
--HG--
extra : convert_revision : be040d6ac96f45aed82f5aae538cae6965e288f8
2009-08-02 01:17:47 +02:00
Juan RP 7b22faf19d xbps_find_orphan_packages: fix a memleak.
--HG--
extra : convert_revision : 67547efacd9a711ae6f92889a41d2e93665a020d
2009-08-02 01:17:08 +02:00
Juan RP d8353810b6 Reorganize pkg metadata files.plist scheme to improve future changes.
This fixes an item from the TODO about 'xbps-bin -C files' not checking
configuration files.

--HG--
extra : convert_revision : bb661554a6b34a25066749844709b8cbaf5a4d6c
2009-08-01 11:23:41 +02:00
Juan RP 816baf0d8a Sync the SHA256 code with NetBSD HEAD.
This fixes a buffer overflow and avoids unnecessary casts and
other cleanup thorough the code.

--HG--
extra : convert_revision : 4b389251cfb76b28028967cd60c409fe94f6c85e
2009-07-29 16:30:37 +02:00
Juan RP e1e3e254ab Remove dup xbps_cmpver_* func, use just the real one.
--HG--
extra : convert_revision : cde78bdcccc68bb865d5bd76a84c00055f451e96
2009-06-07 05:02:58 +02:00
Juan RP 39c24fdd2c xbps_unpack_binary_pkg(): merge a func on it.
--HG--
extra : convert_revision : 1cf498bf353a23062178b4be826b52bb48a3e906
2009-05-19 03:33:50 +02:00
Juan RP 3062c40e63 xbps_prepare_pkg(): fix <origin> obj location.
--HG--
extra : convert_revision : 0502559180e0aa2105fcde3e06ca73714725c31e
2009-05-19 03:33:15 +02:00
Juan RP 38e6679ff5 Implemented plist caching, that gives >30% performance.
--HG--
extra : convert_revision : 6302893f967be96f99a86d499ca62a8c005e56f7
2009-05-19 01:42:48 +02:00
Juan RP f55617312f xbps_get_regpkgdb_dict(): fix previous.
--HG--
extra : convert_revision : bf88602fe6a8c87901fc8e2ffa7f94464961fcbb
2009-05-17 19:46:46 +02:00
Juan RP 1ff41ddbd7 xbps_get_regpkgdb_dict(): fix two memleaks.
--HG--
extra : convert_revision : d66be453f2472e5fdb81b2810f1777166d9a04d3
2009-05-17 07:18:19 +02:00
Juan RP 9f108b4cd2 xbps-bin: implemented (WIP) "autoupdate" target.
Some parts in the library related to findings pkgs in repositories
has been improved vastly by caching the dictionary once.

Duplicated code has been added in xbps-bin/install.c, but will
be fixed soon.

--HG--
extra : convert_revision : 2924012a8589a2a6ecaa3863b5091049006c0ef3
2009-05-17 04:09:26 +02:00
Juan RP 99290baf5e Redo previous and use archive_read_format_tar() rather than _all.
--HG--
extra : convert_revision : 3c80ec13642737551b7bf38c25ee5494593aed4d
2009-04-18 23:58:49 +02:00
Juan RP fd8d47684a Revert "Only add support for bzip2/lzma compression and tar format in"
This reverts commit d8153785d25241d8e22ef664d484cf37a50c8ef2.

--HG--
extra : convert_revision : 62e08401d6a94e78d149ff5ce4ba455d087b39df
2009-04-18 23:55:38 +02:00
Juan RP e4c31936b2 Only add support for bzip2/lzma compression and tar format in
libarchive.

--HG--
extra : convert_revision : d8153785d25241d8e22ef664d484cf37a50c8ef2
2009-04-18 17:25:04 +02:00
Juan RP 046dbee415 Add xbps_get_pkg_revision() to get the revision string.
--HG--
extra : convert_revision : 5c58a44db6b3f1ff2c7f75173aff7d6509dfd4c9
2009-04-18 15:49:08 +02:00
Juan RP 504e123044 Build code with -Wconversion.
--HG--
extra : convert_revision : ac2ea951cae1e739335e428e0fc4d0f90045b77d
2009-04-11 16:15:06 +02:00
Juan RP bd3484fa6b Build code with -Wcast-qual, -Wcast-align and -Wsign-compare.
--HG--
extra : convert_revision : d489ad995bb69850cba5a352f3ac85b74a54b5cf
2009-04-11 15:52:32 +02:00
Juan RP ae1fb7b50c lib/Makefile: run ranlib(1) against the static lib.
--HG--
extra : convert_revision : 269ad3844ef145e0a962f7424258135aa2f74cd1
2009-04-10 19:09:13 +02:00
Juan RP db6b1526d4 lib/sortdeps.c: remove useless check.
--HG--
extra : convert_revision : f1fd20ffc9f77187173422e44aee1a3c369f96cb
2009-04-10 18:38:09 +02:00
Juan RP c1bc7a6a3c lib/Makefile: fix install target.
--HG--
extra : convert_revision : 4ab223f606cac1d5d8b1baea93f87909c607829c
2009-04-10 18:37:41 +02:00
Juan RP d0d45c2ea9 Install the static libxbps library.
--HG--
extra : convert_revision : ff19e2c3f10ac330c4364d40b036ea0bd50b87a8
2009-04-10 17:09:12 +02:00
Juan RP f0bbfad2ae lib/depends.c: remove some extra unneeded checks.
--HG--
extra : convert_revision : f7acb4754894690941a2087bc09b011c50ea3add
2009-04-10 01:46:05 +02:00
Juan RP 01be3b5920 Fix xbps_prepare_pkg() in pkgs without deps.
--HG--
extra : convert_revision : 9be76ef482e54bfbd7e6a038a504f8225aa89cfe
2009-04-10 01:36:22 +02:00
Juan RP 41d9b9acb8 lib/unpack.c: use fsync(), there's not much difference with fdatasync().
--HG--
extra : convert_revision : 9632271e53f4d44890d711943642afddedf69e72
2009-04-09 18:43:00 +02:00
Juan RP 58c6a31297 Define ARCHIVE_READ_BLOCKSIZE and use it rather than using magic numbers.
--HG--
extra : convert_revision : b8e6755400eb6f2bef0ea1eb25a258f9ed1714c2
2009-04-09 18:38:05 +02:00
Juan RP 053abca5ef Use glibc's sys/queue.h and remove the NetBSD local copy.
--HG--
extra : convert_revision : 2e6967a2666bcb7cd826293c03863890649f4c6d
2009-04-09 16:33:42 +02:00
Juan RP aaf5f8fb40 Add some funcs from pacman: question(), yesno(), noyes() and strtrim().
--HG--
extra : convert_revision : 82fbbd28253b02968826bebe4252523c47903a49
2009-04-09 04:52:46 +02:00
Juan RP f80e1753a8 Remove knowledge from the library to install packages.
The library is only responsible now to find all binary packages
from repositories, sort them and create a dictionary with all
details. The frontend (xbps-bin) provides support for this,
and this allows for more flexibility and removes some stuff
that didn't belong in the library.

While here implemented support to show total download/installed
size for all packages that are going to be installed.

Next step will be to implement user interactivity before
installing/removing/updating packages.

--HG--
extra : convert_revision : 858e9a89bc6a60b348435f2416a8af3ebb6ea5c9
2009-04-09 02:29:15 +02:00
Juan RP 32e81e7555 For INSTALL/REMOVE scripts use xbps_file_chdir_exec().
This will chroot() to rootdir and removes many chroot() commands
from those scripts.

--HG--
extra : convert_revision : 4845df1949996da1bcd2776fcc50c3d0a00b451b
2009-04-08 03:20:13 +02:00
Juan RP 3e9e342f74 Make xbps_file_chdir_exec() change root directory if /bin/sh exists.
If /bin/sh is not there, fall back to chdir(destdir) as before.

--HG--
extra : convert_revision : 7506a8db97346dbf45292e4c46b9d8ecc384162a
2009-04-07 22:54:34 +02:00
Juan RP 06e6244f40 lib/install.c: return rv not 0 in xbps_install_binary_pkg_fini().
--HG--
extra : convert_revision : bd6a815ab8a17add0200a8693221c5def18642a1
2009-04-07 15:50:29 +02:00
Juan RP bb3240e4ac Do not reuse requiredby objects while updating pkgs.
--HG--
extra : convert_revision : 1bc0a25601b6ff1c4cd83de4dcd775ffdee1e9a1
2009-04-06 17:00:52 +02:00
Juan RP 625a77883c Make xbps_remove_pkg_from_* return int rather than bool.
--HG--
extra : convert_revision : 9f413873669b552a4d7a6e25e667fe5ff43f6a78
2009-04-06 16:39:14 +02:00
Juan RP 147a8af559 lib/sortdeps.c: wrap long line.
--HG--
extra : convert_revision : 8484a1a0eed376e1cd4e9af9917d42dab91d5ef1
2009-04-06 14:44:35 +02:00
Juan RP ebf400f728 lib/depends.c: simplify store_dependency().
--HG--
extra : convert_revision : 83d806e199b0cc593a82a7f0d575994ea04277fd
2009-04-06 11:40:55 +02:00
Juan RP 986a54a56f xbps_removed_binary_pkg(): chdir after checking if pkg is installed not before.
--HG--
extra : convert_revision : c06555f92939f37740b1677d842619eeb1f5d5ac
2009-04-05 14:48:24 +02:00