46202 Commits

Author SHA1 Message Date
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
Siarzhuk Zharski
bf88d81ea6 Fix GB18030 encoding support. And some cleanup ...
* Fix GB18030 Chinese encoding support for two and four bytes long
  characters. This finally resolves issue described in #6227;
* Processing of multi-byte characters was slightly refactored too;
* Remove the multi-byte 94/96 graphsets designation support for
  Japanese encodings. That looks like MuTerm rudiment, it had incomplete
  implementation and looked like abandoned. On the other hand multi-byte
  designation must be implemented in the same way as designation for
  single-byte graphsets was done. Note that this multi-byte graphsets
  designation has nothing to do with the normal encoding support for
  usual data flow conversion - so you will be on the safe side when
  use terminal encoding menu switch.
  The removed feature is the ancient technique to achieve different charsets
  support on 8-bit serial lines by assigning (designating) predefined
  sets of characters to G0, G1, G2 and G3 and selecting them during
  program life-time into GL (x20-x07E) or GR (xA0-xFF) areas by using LS
  or SS functions.
  For example xterm has no support for designation multi-byte graphsets
  at all. Anyway if this feature is required and you can provide the
  test environment - please let me know and I will be glad to implement
  this feature in more easy and consistent way;
* Remove unreferenced gSmbcsTable and gScsTable parsing tables that
  looks like is not used anymore;
* Remove gCS96GroundTable and gMbcsTable parsing tables that were used
  by multi-byte 94/96 Japanese graphsets support and now obsoleted by
  removing mentioned feature;
* Remove some obsoleted #defines, like HW statusline support for
  example, from parse tables definition.
hrev45533
2013-04-20 16:51:42 +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
Rene Gollent
8c1b20b862 return ESRCH when team isn't found by name. hrev45532 2013-04-20 09:23:00 -04: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
Niels Sascha Reedijk
4ab6221d9a Update translations from Pootle hrev45531 2013-04-20 06:29:14 +02:00
Rene Gollent
87d33c4ff3 Slight refactoring.
- Factored out CppLanguage::ParseTypeExpression() into one that could
  be used in CLanguageFamily, with some hooks to help differentiate
  what's allowed in C vs C++. Makes the type parsing available for
  C files as well, and consequently allows typecasting to work for
  those.
hrev45530
2013-04-19 22:55:59 -04:00
John Scipione
4122ce2aff Move the save panel to the middle of the window as well hrev45529 2013-04-19 21:25:18 -04:00
John Scipione
9e5508fab4 Move the alert to the middle of the window hrev45528 2013-04-19 20:15:24 -04: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
Rene Gollent
3464764f7d Cleanup, no functional change. hrev45527 2013-04-19 18:35:47 -04: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
Rene Gollent
3c6ba4733b Fix #9684.
Implement MemoryBlockRetrievalFailed() hook in
DebugReportGenerator. Use it to report failure to dump the
stack memory region instead of hanging forever waiting for
the request to succeed.
hrev45526
2013-04-19 17:48:46 -04:00
Rene Gollent
808bcad05c Add MemoryBlockRetrievalFailed() hook.
Adjust RetrieveMemoryBlockJob to call said hook if we fail to fulfill
the memory read request.
2013-04-19 17:47:04 -04:00
Rene Gollent
ad9496c20c Fix #9687.
- Fix operator prefix/suffix reversal that caused the first
  argument to be evaluated twice.
- Track if we managed to find a name match for the team at all.
  If not, print an error indicating such.
2013-04-19 17:27:26 -04: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