aboutsummaryrefslogtreecommitdiffstats
path: root/package/system/opkg
Commit message (Collapse)AuthorAgeFilesLines
* treewide: add support for "gc-sections" in PKG_BUILD_FLAGSAndre Heider2023-03-211-1/+2
| | | | | | | | | | | | | | | This reduces open coding and allows to easily add a knob to enable it treewide, where chosen packages can still opt-out via "no-gc-sections". Note: libnl, mbedtls and opkg only used the CFLAGS part without the LDFLAGS counterpart. That doesn't help at all if the goal is to produce smaller binaries. I consider that an accident, and this fixes it. Note: there are also packages using only the LDFLAGS part. I didn't touch those, as gc might have been disabled via CFLAGS intentionally. Signed-off-by: Andre Heider <a.heider@gmail.com>
* opkg: update to 2022-02-24Josef Schlehofer2022-06-271-3/+3
| | | | | | | | | | Changes: 9c44557 opkg_remove: avoid remove pkg repeatly with option --force-removal-of-dependent-packages 2edcfad libopkg: set 'const' attribute for argv This should fix the CI error in the packages repository, which happens with perl. Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
* opkg: update to git HEAD of 2022-01-09Daniel Golle2022-01-091-3/+3
| | | | | | | | | | db7fb64 libopkg: pkg_hash: prefer to-be-installed packages 2edcfad libopkg: set 'const' attribute for argv This should fix the ImageBuilder problems people are having since we introduced the 'uci-firewall' providers. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* treewide: remove PKG_INSTALL from CMake packagesRosen Penev2021-06-191-2/+0
| | | | | | | | | | | | It's already default with cmake.mk Found with: git grep PKG_INSTALL\: | cut -d ':' -f 1 | sort -u > ins git grep cmake.mk | cut -d ':' -f 1 > cmake comm -1 -2 ins cmake Signed-off-by: Rosen Penev <rosenp@gmail.com>
* treewide: remove BUILD_PARALLEL from CMake packagesRosen Penev2021-06-191-2/+0
| | | | | | | | | | | | | It's already default. The only exception is mt76 which has Ninja disabled. Found with: git grep BUILD_PARALLEL | cut -d ':' -f 1 | sort -u > par git grep cmake.mk | cut -d ':' -f 1 > cmake comm -1 -2 par cmake Signed-off-by: Rosen Penev <rosenp@gmail.com>
* opkg: update to git HEADHauke Mehrtens2021-06-131-3/+3
| | | | | | 1bf042d libopkg: pkg_hash: print unresolved dependencies Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* opkg: Fix download over gitHauke Mehrtens2021-06-131-1/+1
| | | | | | | | | | Set the PKG_SOURCE_URL using a lazy set to allow evaluating $(PROJECT_GIT) later. Without this change PKG_SOURCE_URL is evaluated immediately, before PROJECT_GIT is defined and the download over git is not working. Fixes: 6687a2483a09 ("opkg: use $(PROJECT_GIT), $(AUTORELEASE) and SPDX") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* opkg: use $(PROJECT_GIT), $(AUTORELEASE) and SPDXNick Hainke2021-05-251-6/+4
| | | | | | | | | 1) Use SPDX license headers to be machine readable. 2) Update copyright to 2021. 3) Use $(PROJECT_GIT) instead of manually specifying the git url. 4) Use $(AUTORELEASE) to automatically set the correct PKG_RELEASE. Signed-off-by: Nick Hainke <vincent@systemli.org>
* opkg: update to git HEADDaniel Golle2021-03-151-3/+3
| | | | | | 5936c4f libopkg: pkg_hash: prefer original packages to satisfy dependencies Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* opkg: update to git HEADDaniel Golle2021-03-141-3/+3
| | | | | | d3a63b3 libopkg: add option to strip ABI versions from listed names Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* opkg: update to git HEADDaniel Golle2021-03-111-3/+3
| | | | | | d71856a pkg: pass-through ABIVersion to status file Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* opkg: update to git HEADDaniel Golle2020-12-241-3/+3
| | | | | | 9bbc7ea pkg_hash: pkg_hash_check_unresolved: fix segfault Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* opkg: remove legacy dist and extra_dataPaul Spooren2020-12-091-3/+3
| | | | | | | | | efb26a3 libopkg: remove "extra_data" option 1d67ab7 libopkg: remove support for "dist" config Reduces opkg size by about 400 Bytes. Signed-off-by: Paul Spooren <mail@aparcar.org>
* opkg: cleanup man pages and md5 fixupPaul Spooren2020-11-251-3/+3
| | | | | | | 66f458d fix md5sum calculation 02eaf9c man: remove obsolete manual pages Signed-off-by: Paul Spooren <mail@aparcar.org>
* opkg: purge package from cache on hash mismatchPaul Spooren2020-11-241-4/+4
| | | | | | | | | | 61b3c62 opkg_verify_integrity: better logging and error conditions f73d42f download: purge cached packages that have incorrect checksum 1c1480e download: factor out the logic for building cache filenames 293b1ce libopkg: factor out checksum and size verification a786e25 download: remove compatibility with old cache naming scheme Signed-off-by: Paul Spooren <mail@aparcar.org>
* opkg: clean up and fix performance regressionDaniel Golle2020-11-031-3/+3
| | | | | | | da9746a libopkg: clean up handling of unresolved dependencies Signed-off-by: Daniel Golle <daniel@makrotopia.org> Signed-off-by: Paul Spooren <mail@aparcar.org>
* opkg: fix yet another dependency resolution bugDaniel Golle2020-11-021-3/+3
| | | | | | | | | | The previous fix of a fix caused yet another problem leading to `opkg show-upgradable` ending up in an infinite loop. Fix that. Fixes: 4a2b1ff7fb ("opkg: fix dependency resolution") Reported-by: Huangbin Zhan <zhanhb88@gmail.com> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* opkg: fix dependency resolutionDaniel Golle2020-11-021-3/+3
| | | | | | | | | | | | The previous commit broke opkg in a way that it would no longer include dependencies when installing a package, effectively leading to broken images and unusable systems. Fix that by making sure dependencies are still going to be checked. Also reduce size of struct abstract_pkg as suggested by @jow- while at it. Fixes: 1445d333aa ("opkg: bump to git HEAD") Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* opkg: bump to git HEADDaniel Golle2020-10-301-3/+3
| | | | | | 8769c75 pkg_hash: don't suggest incompatible packages Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* build: opkg-key variable key folderPaul Spooren2020-08-311-4/+6
| | | | | | | | | | | | | | The key folder is used by `opkg` and `usign` to store and retrieve trusted public keys. Using `opkg-key` outside a running device is unfeasible as the key folder is hard coded to `/etc/opkg/keys`. This commit adds a variable OPKG_KEYS which defaults to `/etc/opkg/keys` if unset, however allows set arbitrary key folder locations. Arbitrary key folder locations are useful to add signature verification to the ImageBuilders. Signed-off-by: Paul Spooren <mail@aparcar.org>
* opkg: update to git HEADDaniel Golle2020-08-311-3/+3
| | | | | | | 4318ab1 opkg: allow to configure the path to the signature verification script cf44c2f libopkg: fix compiler warning Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* opkg: update to latest Git HEADJo-Philipp Wich2020-05-071-3/+3
| | | | | | | | | | | f2166a8 libopkg: implement lightweight package listing logic cf4554d libopkg: support passing callbacks to feed parsing functions 2a0210f opkg-cl: don't read feeds on opkg update b6f1967 libopkg: use xsystem() to spawn opkg-key 60b9af2 file_util.c: refactor and fix checksum_hex2bin() 206ebae file_util.c: fix possible bad memory access in file_read_line_alloc() Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* opkg: update to latest Git HEADJo-Philipp Wich2020-01-291-3/+3
| | | | | | | | 80d161e opkg: Fix -Wformat-overflow warning c09fe20 libopkg: fix skipping of leading whitespace when parsing checksums Fixes: CVE-2020-7982 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* config: introduce separate CONFIG_SIGNATURE_CHECK optionJo-Philipp Wich2019-08-061-2/+2
| | | | | | | | | | | | | | | | | | | Introduce a new option CONFIG_SIGNATURE_CHECK which defaults to the value of CONFIG_SIGNED_PACKAGES and thus is enabled by default. This option is needed to support building target opkg with enabled signature verification while having the signed package lists disabled. Our buildbots currently disable package signing globally in the buildroot and SDK to avoid the need to ship private signing keys to the build workers and to prevent the triggering of random key generation on the worker nodes since package signing happens off-line on the master nodes. As unintended side-effect, updated opkg packages will get built with disabled signature verification, hence the need for a new override option. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* opkg: bump to version 2019-06-14Yousong Zhou2019-06-141-3/+3
| | | | | | | | Opkg starting from this version special-cases busybox as alternatives provider. There should be no need to add entries to ALTERNATIVES of busybox package Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* opkg: update to latest Git headJo-Philipp Wich2019-01-311-2/+2
| | | | | | | d4ba162 libopkg: only perform size check when information is available Fixes: e079591b84 ("opkg: update to latest Git head") Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* opkg: update to latest Git headJo-Philipp Wich2019-01-311-3/+3
| | | | | | cb66403 libopkg: check for file size mismatches Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* opkg: update to latest Git headJo-Philipp Wich2019-01-191-4/+4
| | | | | | | | | | | | | This update fixes some cosmetical issues and a number of segmentation faults when parsing lists having Conflicts or Replaces tags. d217daf libopkg: fix replacelist parsing and writing 9dd9a07 libopkg: fix segmentation fault when traversing conflicts 34571ba libopkg: consider provided packages in pkg_vec_mark_if_matches() 18740e6 opkg_download: print error when fork() fails e3d7330 libopkg: don't print unresolved dependencies twice Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* opkg: drop argument from check_signature in opkg.confJonas Gorski2018-12-301-2/+2
| | | | | | | | | | check_signature is a bool option and doesn't take any arguments. The presence of the 1 falsely suggests setting it to 0 disables the check, while the option actually needs to be removed or commented out to be disabled. So remove the argument to make it more clear. Fixes: beca028bd6bb ("build: add integration for managing opkg package feed keys") Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* opkg: switch source url to git.openwrt.orgJo-Philipp Wich2018-01-041-2/+2
| | | | | | | As LEDE is rebranding to OpenWrt now, adjust the Git source references accordingly. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* opkg: fix PKG_CONFIG_DEPENDS to include version.mk entriesRafał Miłecki2017-12-141-1/+2
| | | | | | | | Including version.mk sets PKG_CONFIG_DEPENDS to config entries used for VERSION_SED command. We should keep these configs to make sure package gets refreshed when needed. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* package: move distfeeds.conf from opkg to base-filesJonas Gorski2017-12-131-12/+2
| | | | | | | | | | | All the relevant options used for distfeeds.conf are part of base-files, so it makes more sense to move the file there as well. This has the added benefit that the we can share the opkg package again, reducing the amount of target specific packages. Acked-by: Jo-Philipp Wich <jo@mein.io> Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* opkg: bump to version 2017-12-07Rafał Miłecki2017-12-071-3/+3
| | | | | | | | | | | | | Changes: 3b417b9 opkg_download: decode file:/ URLs 71c27cb file_util: implement urldecode_path() d1fe095 file_util: consolidate hex/unhex routines ebdfc12 add opkg option http_timeout 9f003e3 opkg: encode archive filenames while constructing download URLs 73e6c81 file_util: implement urlencode_path() helper 468158f libopkg: fix SHA256 calculation for big endian system Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* opkg: bump to version 2017-07-28Jo-Philipp Wich2017-07-281-3/+3
| | | | | | | | | | Commits since last 2017-07-11: 4bd8601 pkg_parse: fix segfault when parsing descriptions with leading newlines Fixes FS#933. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* opkg: bump to version 2017-07-11Yousong Zhou2017-07-121-3/+3
| | | | | | | | | Commits since last 2017-05-03 52fc006 pkg_alternatives: pass if the desired symlink already exists c668fce opkg: add --no-check-certificate argument Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* opkg: alternatives: use ERROR level for symlink failureYousong Zhou2017-05-031-3/+3
| | | | | | | | Changes since last version 04e279e pkg_alternatives: use ERROR level for symlink failure Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* opkg: alternatives supportYousong Zhou2017-05-021-4/+4
| | | | | | | | | | Changes since last version 546bc72 pkg: alternatives support 7a96972 libbb: xreadlink: fix memory leak on failure case 3f13edd pkg_run_script: use pkg->dest in half installed case Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* opkg: backport upstream fixes, code cleanupsJo-Philipp Wich2017-04-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Update to latest Git in order to import the following fixes: 1d0263b check_data_file_clashes_change: remove duplicated offline root in paths a00a6a9 buildReplaces: do not add duplicated replacees 9fbedd8 opkg: compare-versions doesn't need any state 45b54f6 opkg_cmd: fix segmentation fault in opkg_compare_versions_cmd() 93de62b opkg_cmd: fix return of opkg compare-versions 51275a8 pkg_src_list_push: remove unused function 947d3d4 pkg_src_list_pop: remove unused function 980cfb2 str_list_push: remove unused function 52c31c1 str_list_prev: remove unused function 7d24212 str_list_last: remove unused function 48142a3 conffile_list_pop: remove unused function 46c5de5 pkg_dest_list_push: remove unused functions 368bb62 nv_pair_list_prev: remove unused function 2985c00 nv_pair_list_last: remove unused function f5082ac conffile_list_pop: remove unused function 89bf8b9 conffile_list_push: remove unused function 23d31fb active_list_sort: remove unused function 7fe45f2 active_list_add_depend: remove unused function 86b584d pkg_dependence_satisfied: remove unused function 816d330 Fix typo in pkg_hash_fetch_best_installation_candidate. 07f3b02 set_flags_from_control: remove function Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* build: move PKG_CONFIG_DEPENDS from feeds.mk to opkgFelix Fietkau2017-04-031-1/+8
| | | | | | | Normal packages don't rely on the feed configuration variables for the build step Signed-off-by: Felix Fietkau <nbd@nbd.name>
* opkg: gracefully handle missing $PATH, fix build warningsJo-Philipp Wich2017-03-151-4/+5
| | | | | | | | | | | | | | | | | | | | | | | Update to latest Git in order to import the following fixes: cfe46c7 opkg_active_list_test: mark functions static, swap strcmp() with memcmp() 0b60d6a libopkg_test: mark functions static, remove unused opkg_test() 28b5e15 pkg_parse: fix bad message level for opkg_msg() call d9e5814 pkg_parse: remove unused variable in pkg_parse_line() 1654bcc pkg_parse: remove const requirement from pkg_parse_line() 53e199e pkg_hash: remove unused variable in pkg_hash_load_feeds() da8d599 pkg_depends: add missing parse_replacelist() prototype f0c0a80 opkg_utils: add missing header e450488 libopkg: remove unused progress parameters from opkg_download() f4a55d1 libopkg: remove unused progress callback 7cbc466 libopkg: remove unused variable from opkg_install_package() 6fbf8a9 libbb: remove unused variables 7975c73 libbb: change gzip_read() buffer argument to void * 6e28563 libbb: fix gzip_thread() warnings 1ff2475 libopkg/opkg_cmd.c: more robust PATH handling 5dc3e33 libopkg: specify "/bin/sh" instead of "sh" Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* opkg: fix several package installation bugsJo-Philipp Wich2017-03-061-3/+3
| | | | | | | | | | | | | | | Update to latest Git in order to import the following fixes: 19070b6 unarchive: fix possible segmentation fault in deb_extract() 758527e pkg: forward "provided_by_hand" flag in pkg_merge() 1fdc2ca pkg: mark bit fields in pkg_t unsigned 15fc1ee opkg_cmd: avoid null pointer dereference in opkg_what_depends_conflicts_cmd() 439c89e opkg_cmd: fix endless loop in whatprovides/whatreplaces 0fb3e9f pkg_depends: propagate virtual provided detail flag to providers 793155f pkg_depends: fix unsatisfied dependency installation order b1dc770 libopkg: fix some overly aggressive line wrapping in pkg_depends.c Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* opkg: mark as essential (FS#571)Jo-Philipp Wich2017-03-011-0/+1
| | | | | | Flag the opkg package as essential to avoid accidential uninstalls of it. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* opkg: fix stray printf() (#551)Jo-Philipp Wich2017-02-231-3/+3
| | | | | | | Update to latest Git head to get rid of a stray printf() causing unwanted output in the "opkg list-upgradable" command. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* opkg: fix handling conffiles in status listsJo-Philipp Wich2017-02-221-3/+3
| | | | | | | A missing list pointer initialization caused opkg to ignore conffile entries from status files, breaking the conffile tracking on the target. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* opkg: re-enable usign supportJo-Philipp Wich2017-02-201-2/+2
| | | | | | | | | The switch to cmake caused the -DHAVE_USIGN flag to get lost, disabling compilation of the correspondinf support code. Update to latest Git head which enables usign support by default. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* opkg: switch to own fork to improve memory usageJo-Philipp Wich2017-02-1930-3495/+24
| | | | | | | | | | Switch to our own fork of opkg to significantly reduce the required amount of memory when updating lists or installing packages. Preliminary tests showed a usage drop of about 90% during these operations, from ~3.7MB with unmodified opkg to ~360KB with our custom fork. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* opkg: clarify messages and errors related to downloadsHannu Nyman2017-01-262-1/+62
| | | | | | | | | | | | | Clarify opkg's messages related to downloads: * more visible error message for package list download failure * separate error message for signature file download error * if wget returns 4, signal the network error more clearly * remove '.' from end of filenames and URLs * try signature check only if the package list was downloaded ok. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
* opkg: use default PKG_BUILD_DIRMatthias Schiffer2017-01-161-1/+0
| | | | | | | opkg doesn't have BUILD_VARIANTs anymore, so the previously defined PKG_BUILD_DIR would lead to a weird 'opkg-' path component. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* opkg: drop S/MIME supportFelix Fietkau2017-01-101-59/+8
| | | | | | | | | | It has never been used by default (due to being too bloated), and it is properly replaced by usign (which has been the default for a long time now). Remove this feature to simplify the build system Signed-off-by: Felix Fietkau <nbd@nbd.name>
* opkg: vfork external gzip command to uncompress dataJo-Philipp Wich2016-12-274-23/+746
| | | | | | | | | | | | | | | | | | Opkg's builtin decompression code is unsuitable to process nested archives as it uses a single shared state and relies on undefined seek behaviour for pipes. Rework the extraction logic to use the external gzip command as I/O filter for decompressing data and remove the builtin inflate code entirely. This shrinks the final opkg binary by about 4KB and results in less runtime memory consumption due to efficient use of vfork() and less copy-on-write operations in the forked child. Rework by Felix: create a thread that relays data to the gzip process instead of using a fragile poll loop Signed-off-by: Jo-Philipp Wich <jo@mein.io> Signed-off-by: Felix Fietkau <nbd@nbd.name>