41188 Commits

Author SHA1 Message Date
Oliver Tappe
083234daa2 Drop legacy scripts 'cc' and 'c++'
* no longer put compiler wrappers onto image
* removed corresponding environment variables
2013-04-22 01:00:36 +02:00
Oliver Tappe
86b3c7a416 Drop symlink common/develop/tools/current
* drop the symlink itself (system development tools are now symlinked
  from /boot/common/bin directly)
* remove that symlink from PATH
2013-04-22 00:56:02 +02:00
Oliver Tappe
4b303759d2 Update prerequired packages with current versions. 2013-04-22 00:50:01 +02:00
Oliver Tappe
5c01289f68 Adjust configure script to changed compiler version 2013-04-21 23:22:19 +02:00
Ingo Weinhold
a5999f6ff7 pkgman: Add "update" command 2013-04-21 13:56:21 +02:00
Ingo Weinhold
212c636f41 BSolver/LibsolvSolver: Add Update() 2013-04-21 13:55:38 +02:00
Ingo Weinhold
458a86aacb pkgman: Organize commands by category 2013-04-21 13:11:53 +02:00
Ingo Weinhold
df2685d885 pkgman: Add "uninstall" command 2013-04-21 12:52:06 +02:00
Ingo Weinhold
8ba41d628c pkgman install: Fix typo in usage text 2013-04-21 12:50:31 +02:00
Ingo Weinhold
de62d76176 BSolver/LibsolvSolver: Add Uninstall()
Also fix incorrect check in LibsolvSolver::GetResult().
2013-04-21 12:48:39 +02:00
Ingo Weinhold
3ac0de3b1f pkgman: Refactoring -> PackageManager
Move common and reusable functionality from "search" and "install" to
new PackageManager class.
2013-04-21 12:31:29 +02:00
Ingo Weinhold
c128275ede <Archivable.h>: Fix conflict with BPackageKit::BPrivate
... when "using BPackageKit::BPrivate".
2013-04-21 12:29:41 +02:00
Ingo Weinhold
7466fa2d49 pkgman install: Simplify transaction creation 2013-04-21 10:36:19 +02:00
Ingo Weinhold
2f028e9a2d pkgman install: Add problem solution selection support 2013-04-21 02:48:52 +02:00
Ingo Weinhold
8e6c3631a3 BSolver/LibsolvSolver: Add problem solution selection support
... and re-solving.
2013-04-21 02:48:52 +02:00
Ingo Weinhold
ec41ff587f pkgman install: Refresh repositories first 2013-04-21 02:48:52 +02:00
Ingo Weinhold
adc49c411a pkgman install: better out-of-memory error messages 2013-04-21 02:48:51 +02:00
Ingo Weinhold
7c092d4d86 Add build profile action update-packages
Equivalent to "jam <list of all hpkgs> && jam @... <list of all hpkgs>",
i.e. it makes sure all hpkgs that are supposed to be in the image are
rebuilt respectively downloaded and copied to the image. It doesn't
remove old packages nor the activation files -- that still has to be
done manually.
2013-04-21 01:44:21 +02:00
Ingo Weinhold
eee120f987 pkgman install: Complete basic functionality
Download package files to install from the respective repositories and
use BDaemonClient to perform the package de-/activation. Still missing
is the interactive problem solution support.
2013-04-20 21:40:11 +02:00
Ingo Weinhold
6a1430716c BDaemonClient: Add support for creating activation transactions
* BActivationTransaction:
  - Remove non-trivial constructor.
  - Remove package list parameters from SetTo().
  - Add AddPackageTo{Dea,A}ctivate().
* BDaemonClient:
  - Add CreateTransaction(). It creates a transaction directory and
    initializes a BActivationTransaction. Packages to de-/activate have
    to be added afterwards.
  - Add BCommitTransactionResult::FullErrorMessage().
2013-04-20 21:40:11 +02:00
Ingo Weinhold
69a53ac5b4 Add DownloadFileRequest
Downloads a file and optionally checks its checksum.
2013-04-20 21:40:11 +02:00
Ingo Weinhold
cca3f3b743 package daemon: Fix Volume::_WriteActivationFile()
* Wasn't using the toActivate and toDeactivate parameters, but the
  attributes. Thus failed when called from the
  CommitTransactionHandler.
* Volume::_ChangePackageActivation(): Fix debug output.
2013-04-20 21:40:10 +02:00
Ingo Weinhold
e14b247176 Add StringChecksumAccessor
A ChecksumAccessor implementation for an already known checksum.
2013-04-20 21:40:09 +02:00
Ingo Weinhold
4ea7f45bc5 BRequest: Change attribute protection from private to protected
Particularly fInitStatus is of interest for derived classes.
2013-04-20 21:40:09 +02:00
Ingo Weinhold
be8f5e00f1 BPackageInfo: Add CanonicalFileName()
The name of the package file is not part of the package-info.
CanonicalFileName() constructs the name the file should have (not
enforced anywhere (yet)).
2013-04-20 21:40:08 +02:00
Ingo Weinhold
a3b1c7b96e package daemon: Volume::_WriteActivationFile(): Init _entry 2013-04-20 21:40:08 +02:00
Ingo Weinhold
2e3f5000e3 package daemon: Fix check in Volume::_PackagesEntryCreated() 2013-04-20 21:40:08 +02:00
Ingo Weinhold
e2678ec041 pkgman refresh: Include the repository name in error message 2013-04-20 21:40:07 +02:00
Oliver Tappe
bab6caf3e0 Another lap of updating base packages:
* binutils has now been split off gcc
* adjusted other packages to new naming scheme
2013-04-20 15:32:19 +02:00
Oliver Tappe
74233e2c88 Re-apply cf0a957 for the build-version of libbe.
* fixes build on non-Haiku platforms
2013-04-20 15:16:00 +02:00
Ingo Weinhold
e0d4161d42 pkgman: Make use of BRequest::Process() 2013-04-20 13:28:36 +02:00
Ingo Weinhold
f71be99bd9 BRequest: Add Process()
The method creates the initial jobs for the request and processes the
jobs from the job queue until empty or an error occurs.
2013-04-20 13:26:34 +02:00
Ingo Weinhold
85d2badf00 package daemon: Add support for activation change request
* daemon: Handle new request B_MESSAGE_COMMIT_TRANSACTION. It activates
  and deactivates given sets of packages. The new packages must be
  placed in a directory in the administrative directory. The daemon
  moves them to the packages directory and the deactivated packages to
  a subdirectory it creates. It also save the old activation state
  there.
* Add private BActivationTransaction, describing an activation change
  transaction.
* BDaemonClient: Add CommitTransaction(), which sends a given
  BActivationTransaction as a B_MESSAGE_COMMIT_TRANSACTION request to
  the daemon.

Completely untested yet.
2013-04-20 01:28:18 +02:00
Ingo Weinhold
7a27bcd113 BPackageInfo: Make use of BMessage::{Add,Find}Strings() 2013-04-20 00:33:13 +02:00
Ingo Weinhold
cf0a957ff6 BMessage: Add {Add,Find}Strings()
They add a BStringList to/extract it from a B_STRING_TYPE field.
2013-04-20 00:29:24 +02:00
Ingo Weinhold
3c6784e95c BPackageInfo::Parser: Be a bit stricter wrt. names after all
Also disallow the operator characters in names.
2013-04-19 16:21:42 +02:00
Ingo Weinhold
00b5554e11 pkgman: Print correct error when parsing package info failed 2013-04-19 16:06:11 +02:00
Ingo Weinhold
cba60307b8 BPackageInfo::Parser: Relax package/resolvable name rules
Now we allow any character but '-', '/', and whitespace.
2013-04-19 16:04:27 +02:00
Ingo Weinhold
f16dbba442 Update libsolv package 2013-04-19 01:34:26 +02:00
Ingo Weinhold
b50e5e3307 package[_repo]: Print version correctly
Use BPackageVersion::ToString() instead of assembling the version
string manually. This fixes the incorrect pre-release separator.
2013-04-19 01:31:47 +02:00
Ingo Weinhold
ea8b5c257d BPackageInfo parser: Allow '.' in micro version component
Otherwise we'd have to encode e.g. "cvs-1.12.13.1" differently.
2013-04-18 18:43:47 +02:00
Ingo Weinhold
06b4ebe51c package-infos in tree: use '~' as pre-release separator 2013-04-18 17:50:47 +02:00
Ingo Weinhold
9d81dc7655 BPackage{Info,Version}: Switch to '~' as pre-release separator
Also allow '.' in the pre-release string (as in "alpha4.1") and in
package and resolvable names.
2013-04-18 17:50:47 +02:00
Ingo Weinhold
b7c89d42a6 packagefs: Use '~' as pre-release separator
"[...]" turns out to be not so good an idea after all. In the shell it
would require escaping.
2013-04-18 17:50:46 +02:00
Ingo Weinhold
7fa369956e BOpenHashTable::Clear(): Set fItemCount to 0
If not empty, the count would afterwards be out of sync with reality.
2013-04-18 15:53:34 +02:00
Ingo Weinhold
5e6adff989 BPackageVersion::ToString(): Return empty string, if invalid 2013-04-18 15:12:04 +02:00
Ingo Weinhold
7b2d062147 Enforce current package rules for packages built from tree
* Replace '-' in package name by '_'.
* Use new '[...]' notation for pre-release version component.
2013-04-18 14:44:44 +02:00
Ingo Weinhold
defc1f774a BPackage{Version,Info}: Switch to new pre-release rule
Also add several checks in the package-info parser to enforce the
<alphanum_underscore> requirement of package/resolvable names and
version components.
2013-04-18 14:41:27 +02:00
Ingo Weinhold
d0367de056 packagefs: Switch to new rule for pre-release version part 2013-04-18 14:38:24 +02:00
Ingo Weinhold
ceb18a3777 packagefs: Fix typo in debug output 2013-04-18 14:35:59 +02:00