#
95f94193 |
|
05-Jun-2023 |
Humdinger <humdingerb@gmail.com> |
pkgman: add command to show summary and description Add command "info" to show the summary and description of a package in a a remote repository. Change-Id: I254eff3bb6401c90a394a483cd684134ead0a9a3 Reviewed-on: https://review.haiku-os.org/c/haiku/+/6516 Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> Reviewed-by: waddlesplash <waddlesplash@gmail.com>
|
#
8028ede7 |
|
15-Jan-2016 |
Rene Gollent <rene@gollent.com> |
Build: Add architecture rule for libshared.a. - As suggested by Ingo, add libshared.a to the architecture name map. This allows it to be linked by its short name like other frequently used libraries. - Adjust all Jamfiles referencing the lib accordingly.
|
#
dd15db95 |
|
25-Oct-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Add --debug option for most commands * Add CommonOptions class and add an instance to Command. It supports a debug level. * full-sync, install, search, uninstall, update: Add option --debug. This allows getting some debug output from the solver in cases where the result seems weird.
|
#
220d0402 |
|
31-Jul-2014 |
Oliver Tappe <zooey@hirschkaefer.de> |
Use libstdc++, libsupc++ and libgcc from gcc_syslibs. * Instead of faking libstdc++.so from libstdc++.a, use libstdc++.so from the gcc_syslibs build feature for everything except x86_gcc2. * Use libgcc_s.so from the gcc_syslibs build feature for everything but x86_gcc2 (which still carries libgcc as part of libroot.so). * Drop filtering of libgcc objects for libroot, as that is no longer necessary since we're only using libgcc-as-single-object for libroot with x86_gcc2, where the filtered object file doesn't exist. Should the objects that used to be filtered cause any problems as part of libgcc_s.so, we can always filter them as part of the gcc build. * Use libsupc++.so from the gcc_syslibs build feature for everything but x86_gcc2. * Adjust all Jamfiles accordingly. * Deactivate building of faked libstdc++.so for non-x86-gcc2. For x86_gcc2, we still build libstdc++.so from the sources in the Haiku source tree as part of the Haiku build . * Put gcc_syslibs package onto the image, when needed.
|
#
6ef57ae2 |
|
25-Jan-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Add full-sync command * BSolver/LibsolvSolver: Add FullSync() method. It uses libsolv's SOLVER_DISTUPGRADE mode. * BPackageManager: Add FullSync() using the new solver mode. * pkgman: Add full-sync command. The new command is similar to the update command without arguments, just more aggressive, allowing downgrading or even removal of packages, to match the state of the repositories. Just like "update" it doesn't work properly yet.
|
#
5df58b52 |
|
30-Nov-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Move TextTable from pkgman to libshared
|
#
bf5786eb |
|
27-Nov-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman search: Add -D/--details * Add a detailed listing mode (-D/--details), which prints a table with repository/installation location name, package name, package version, package architecture. * Make the normal listing more compact. Now there's only one row per package. The "Installed" column has been replaced by "Status" which displays if/where the package is installed and whether it matches the repository version.
|
#
83462cc2 |
|
31-Aug-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Refactor reusable pkgman code into libpackage * Move RepositoryBuilder class to libpackage and add B* prefix to name. * Pull BPackageManager class out of PackageManager and move to libpackage. The base class is customizable via three handler objects responsible for transaction handling, request execution, respectively user interaction. * Reorganize _ApplyPackageChanges(): Now we first prepare the transactions for all affected installation locations (downloading files etc.) and then commit them.
|
#
90f9f139 |
|
27-Aug-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman install: Add base package support If any of the packages to install has requires a base package, that is installed in a more general installation location, we copy the package to the target installation location. Ideally we'd hard-link, but BFS doesn't support that. Symlinks would be a small nightmare to maintain. We might want to choose the installation location intelligently depending on the base package requirement -- e.g. install curl_devel in system rather than common, since curl is installed in system -- so we can avoid duplicating packages.
|
#
464ee61f |
|
17-Aug-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: link against needed libstdc++
|
#
a5999f6f |
|
21-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Add "update" command
|
#
df2685d8 |
|
20-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Add "uninstall" command
|
#
3ac0de3b |
|
20-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Refactoring -> PackageManager Move common and reusable functionality from "search" and "install" to new PackageManager class.
|
#
0d50fa87 |
|
12-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Add beginnings of the "install" command So far it only solves the dependencies and prints the result. No problem handling, no actual installation.
|
#
38e528bb |
|
11-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: C++-ify the command handling There's now a Command class that must be derived and registered with a CommandManager, all simplified by a REGISTER_COMMAND macro. That gets rid of the print_command_usage_and_exit() function copy for every command, moves the short usage texts to the command implementations, and avoids any repetition of the command name. When implementing a new command only a new source file needs to be created, nothing else needs to be touched.
|
#
dd46d981 |
|
11-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Add "search" command
|
#
5776551d |
|
10-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Move some classes into own file for reuse Namely RepositoryBuilder and PackageInfoErrorListener.
|
#
19f3eaae |
|
03-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Simplify and rename resolve-build-dependencies * Now it only gets a package (info) file and a single list of repository directories, optionally with priority, and resolves the package's dependencies. The more complex two resolving steps it did before can just as well be done by haikuporter, and this way the command is more flexible. * Rename to resolve-dependencies. * Some TODOs still remain.
|
#
1acf2be8 |
|
02-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Add command resolve-build-dependencies This is a service command for haikuporter. It resolves the dependencies for a package to be built and lists them, so that haikuporter can prepare the build environment accordingly. The implementation isn't quite finished yet. Currently the packages are printed only with name and version, while it would probably be more helpful to print the path of the package file. Also, the package itself (respectively a dummy package) is printed as well.
|
#
733c783d |
|
25-Jan-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
more work on package kit: * rip BRepositoryHeader out of BRepositoryConfig and add support for it to BRepositoryCache * implement repository removal * some minor cleanups git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40290 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7d7ed9bf |
|
25-Jan-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Mostly style-related changes to package kit: * drop 'Haiku' namespace * rename 'Package' namespace to 'BPackageKit' * renamed all public classes to begin with a 'B' * renamed BPackageKit::Roster to BPackageKit::BPackageRoster to not clash with the BRoster from the application kit. * fix some instances of public headers including private ones Some functional changes, too: * JobQueue now removes and deletes dependants of failed jobs automatically * JobQueue supports waiting for jobs to become runnable * added a couple of InitCheck() methods where they make sense and invoke those in users of these classes git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40287 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
35edda8f |
|
24-Jan-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
* more work on the package kit, repositories can now be added and refreshed git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40280 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
11a4ecfd |
|
22-Jan-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
* added support for interactive decisions to package kit and pkgman git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40268 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
500bb630 |
|
21-Jan-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
* WIP-commit of the first parts of the package kit and the pkgman (console-)tool git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40261 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
dd15db954b893bd727a4ba5972bd2019d673f074 |
|
25-Oct-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Add --debug option for most commands * Add CommonOptions class and add an instance to Command. It supports a debug level. * full-sync, install, search, uninstall, update: Add option --debug. This allows getting some debug output from the solver in cases where the result seems weird.
|
#
220d04022750f40f8bac8f01fa551211e28d04f2 |
|
31-Jul-2014 |
Oliver Tappe <zooey@hirschkaefer.de> |
Use libstdc++, libsupc++ and libgcc from gcc_syslibs. * Instead of faking libstdc++.so from libstdc++.a, use libstdc++.so from the gcc_syslibs build feature for everything except x86_gcc2. * Use libgcc_s.so from the gcc_syslibs build feature for everything but x86_gcc2 (which still carries libgcc as part of libroot.so). * Drop filtering of libgcc objects for libroot, as that is no longer necessary since we're only using libgcc-as-single-object for libroot with x86_gcc2, where the filtered object file doesn't exist. Should the objects that used to be filtered cause any problems as part of libgcc_s.so, we can always filter them as part of the gcc build. * Use libsupc++.so from the gcc_syslibs build feature for everything but x86_gcc2. * Adjust all Jamfiles accordingly. * Deactivate building of faked libstdc++.so for non-x86-gcc2. For x86_gcc2, we still build libstdc++.so from the sources in the Haiku source tree as part of the Haiku build . * Put gcc_syslibs package onto the image, when needed.
|
#
6ef57ae2a96085ccb56e356e21e652cc11777ac0 |
|
25-Jan-2014 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Add full-sync command * BSolver/LibsolvSolver: Add FullSync() method. It uses libsolv's SOLVER_DISTUPGRADE mode. * BPackageManager: Add FullSync() using the new solver mode. * pkgman: Add full-sync command. The new command is similar to the update command without arguments, just more aggressive, allowing downgrading or even removal of packages, to match the state of the repositories. Just like "update" it doesn't work properly yet.
|
#
5df58b522b52d5914bf8b49fc47ff46fde56877f |
|
30-Nov-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Move TextTable from pkgman to libshared
|
#
bf5786ebd6d585459623cb9b38df79d05488c94a |
|
27-Nov-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman search: Add -D/--details * Add a detailed listing mode (-D/--details), which prints a table with repository/installation location name, package name, package version, package architecture. * Make the normal listing more compact. Now there's only one row per package. The "Installed" column has been replaced by "Status" which displays if/where the package is installed and whether it matches the repository version.
|
#
83462cc28d356d564a818c1d34605ed2ec83f274 |
|
31-Aug-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Refactor reusable pkgman code into libpackage * Move RepositoryBuilder class to libpackage and add B* prefix to name. * Pull BPackageManager class out of PackageManager and move to libpackage. The base class is customizable via three handler objects responsible for transaction handling, request execution, respectively user interaction. * Reorganize _ApplyPackageChanges(): Now we first prepare the transactions for all affected installation locations (downloading files etc.) and then commit them.
|
#
90f9f1392b5bac87c6333ec9627eda462035617d |
|
27-Aug-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman install: Add base package support If any of the packages to install has requires a base package, that is installed in a more general installation location, we copy the package to the target installation location. Ideally we'd hard-link, but BFS doesn't support that. Symlinks would be a small nightmare to maintain. We might want to choose the installation location intelligently depending on the base package requirement -- e.g. install curl_devel in system rather than common, since curl is installed in system -- so we can avoid duplicating packages.
|
#
464ee61f45db818926c18542bc7497e5d5769578 |
|
17-Aug-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: link against needed libstdc++
|
#
a5999f6ff7fbadb4f8cc94f5e4283dacbf231a59 |
|
21-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Add "update" command
|
#
df2685d885f3b940bc04b1cf5f39511ce6750ddf |
|
20-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Add "uninstall" command
|
#
3ac0de3b1fac18912d6cb7758b502468e3802ee9 |
|
20-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Refactoring -> PackageManager Move common and reusable functionality from "search" and "install" to new PackageManager class.
|
#
0d50fa87ec909d6d81190d187596163264c59d94 |
|
12-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Add beginnings of the "install" command So far it only solves the dependencies and prints the result. No problem handling, no actual installation.
|
#
38e528bbc1c368456c8b8a94d6f21081934cc4f9 |
|
11-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: C++-ify the command handling There's now a Command class that must be derived and registered with a CommandManager, all simplified by a REGISTER_COMMAND macro. That gets rid of the print_command_usage_and_exit() function copy for every command, moves the short usage texts to the command implementations, and avoids any repetition of the command name. When implementing a new command only a new source file needs to be created, nothing else needs to be touched.
|
#
dd46d9816332a8936534aeeb26613c5269b75a6a |
|
11-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Add "search" command
|
#
5776551d3dfa5c88bdebd65fd211aaebbb91e525 |
|
10-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Move some classes into own file for reuse Namely RepositoryBuilder and PackageInfoErrorListener.
|
#
19f3eaaee692a5edc59cb453540489a132c43b69 |
|
03-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Simplify and rename resolve-build-dependencies * Now it only gets a package (info) file and a single list of repository directories, optionally with priority, and resolves the package's dependencies. The more complex two resolving steps it did before can just as well be done by haikuporter, and this way the command is more flexible. * Rename to resolve-dependencies. * Some TODOs still remain.
|
#
1acf2be80dd9d6409fd3a4f6d304896fb9aeb286 |
|
02-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
pkgman: Add command resolve-build-dependencies This is a service command for haikuporter. It resolves the dependencies for a package to be built and lists them, so that haikuporter can prepare the build environment accordingly. The implementation isn't quite finished yet. Currently the packages are printed only with name and version, while it would probably be more helpful to print the path of the package file. Also, the package itself (respectively a dummy package) is printed as well.
|
#
733c783dc9cce693795e43d5bfec7b5ce4fd32f8 |
|
25-Jan-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
more work on package kit: * rip BRepositoryHeader out of BRepositoryConfig and add support for it to BRepositoryCache * implement repository removal * some minor cleanups git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40290 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7d7ed9bf4bdd7bc31e31143c402c4f96a324b30b |
|
25-Jan-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Mostly style-related changes to package kit: * drop 'Haiku' namespace * rename 'Package' namespace to 'BPackageKit' * renamed all public classes to begin with a 'B' * renamed BPackageKit::Roster to BPackageKit::BPackageRoster to not clash with the BRoster from the application kit. * fix some instances of public headers including private ones Some functional changes, too: * JobQueue now removes and deletes dependants of failed jobs automatically * JobQueue supports waiting for jobs to become runnable * added a couple of InitCheck() methods where they make sense and invoke those in users of these classes git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40287 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
35edda8f0befb8667b593e2314f6d555a7db44d8 |
|
24-Jan-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
* more work on the package kit, repositories can now be added and refreshed git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40280 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
11a4ecfd82c31ded8ba33ad2ac5f5a6538b7fa40 |
|
22-Jan-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
* added support for interactive decisions to package kit and pkgman git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40268 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
500bb6305c339017d7d7302dc1f63ac90443f267 |
|
21-Jan-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
* WIP-commit of the first parts of the package kit and the pkgman (console-)tool git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40261 a95241bf-73f2-0310-859d-f6bbb57e9c96
|