opkg(5)
π opkg.conf β the manual, but make it make sense π
okay so bestie, this is the opkg.conf manual page from the opkg package manager (manual name: opkg.conf, duh). This file is literally the vibe check for how opkg behaves. It's the config file. Let's get into it. π«Ά
β¨ NAME β¨
opkg.conf β the opkg configuration file. It's giving "settings but make it a text file." π
πΈ DESCRIPTION πΈ
Okay so this file is where the default options for opkg live. Each line is a single option, and it's exactly the same as a normal command-line option for opkg β except you don't use the leading dashes here. No dashes, no drama. β¨
Comments are allowed! Just start a line with a hash sign (#) and opkg will ignore it, like it's ignoring your ex. π
There can be multiple configuration files, and repositories can be placed in separate *.conf files. A repository configuration file only needs a src line β that's it, that's the whole assignment. Slay. π
Here's the tea though: a opkg.conf file is not needed if repositories are not being used to obtain packages, and if the packages are expected to install in /. So if you're not doing repo stuff and everything's going to root, you can literally skip this file. No cap. π
π FILES π
The config files live here:
/nix/store/grk9n16q885x1s1ifj175j31gbla9d7r-opkg-0.8.0/etc/*.conf
That's the path, bestie. Copy it exactly. Don't @ me. π
π¦ USAGE π¦
Here's an example of how to set specific options β outlined for you, because we're nice like that:
option autoremove 1
option check_signature 1
option signature_type gpg
dest root /
arch i386 1
src/gz base http://my.package.server/path/to/my/base/repo
src/gz nightly http://my.package.server/path/to/my/snapshot/repo
That's the whole vibe. option for options, dest for destinations, arch for architectures, src/gz for repos. Iconic. π
π REPOSITORY CONFIGURATION π
The opkg repository configuration consists of three parts. Three! Like a trilogy. A holy trinity. Let's break it down. π§
- The repository type β this tells
opkgwhat format the repository will take.srcmeans an uncompressed repository list.src/gzmeans a gzip compressed repository list. Sogzis literally just "gz" for "gzip." Groundbreaking. π - The repository name β this is a descriptive name used to identify a particular repository. For instance,
basemay refer to a basic repository containing packages used for generic maintenance. A repository namednightlymay contain packages from some daily build system. It's giving "label your Tupperware" energy. π - The repository location β this must point to the top directory containing the
Packagesindex file. The repository location may refer to:- a local directory on the system with the prefix
file:// - a webserver with
http://orhttps:// - an FTP server with
ftp://
- a local directory on the system with the prefix
That's the three-part saga. Periodt. π₯
β¨ OPTIONS β¨
Okay bestie, here come the options. All of them. Every single one. Don't skip, these are all important. π
archβ Registers a given architecture with a given priority. The number specifies a priority index which is used byopkgto determine which package to prefer in case it is available in multiple architectures.autoremoveβ Removes packages that were installed automatically in order to satisfy dependencies (default is0).cache_dirβ Specifies the cache directory.cache_local_filesβ For local repositories (file://), a symlink of the file is created in the cache directory rather than copying the file directly (default is0).check_pkg_signatureβ Performs a signature check against a package. The signature file should be next to the package (default is0).check_signatureβ Performs a signature check against the package index. The signature file should be next to the package index (default is0).combineβ Combines upgrade and install operations; this may be needed to resolve dependency issues. Only available for the internal solver backend (default is0).compress_list_filesβ Compresses the list files inlist_dir(gz).connect_timeout_ms(CURL) β The maximum amount of time allowed for a connection initialization to take (default is300seconds).destβ Registers a given destination with a given path. If nodestis specified,rootis specified automatically to/.download_firstβ Download all the transaction packages first, before any changes to the file system.download_onlyβ No action β download only (default is0).follow_location(CURL) β Follows any"Location:"header that the server sends as part of the HTTP header (default is0).force_dependsβ Install/remove despite failed dependencies (default is0).force_downgradeβ Allowopkgto downgrade a package (default is0).force_maintainerβ Overwrite existing conffile's (default is0).force_overwriteβ Overwrites files from other packages (default is0).force_postinstallβ Run postinstall scripts even in offline mode (default is0).force-checksumβ Don't fail on checksum mismatches (default is0).force_reinstallβ Reinstalls the package(s) (default is0).force_spaceβ Disables free space checks (default is0).ftp_explicit_ssl(CURL) β Forces CURL to establish a FTP connection over SSL (default is0).ftp_proxy(CURL/WGET) β Specifies the FTP Proxy.gpg_dirβ Specifies the GPG directory containing the GPG keyring.gpg_trust_levelβ Specifies the GPG trusted level. The Default isTrustOnly.TrustOnlyβ Trust only package signatures with a trust level of Full or UltimateTrustAnyβ Trust any package with a valid signature
Note: Any file signed with a GPG that is specified as trust level NEVER will NOT be trusted.
http_auth(CURL) β Specifies the HTTP username/password in the format"[username]:[password]".http_proxy(CURL/WGET) β Specifies the HTTP proxy address in the format"<url:port>".https_proxy(CURL) β Specifies the HTTPS proxy address in the format"<url:port>".ignore_maintainerβ Ignores changes to files listed as conffile's during a package upgrade (default is0).ignore_uidβ Do not restore the user and group IDs when extracting files.intercepts_dirβ Specifies the directory used to store intercept scripts.info_dirβ Specifies the directory used to store packages information.lists_dirβ Specifies the directory used to store local copies of repository information.lock_fileβ Specifies the lock file path.noactionβ No action β test only (default is0).nodepsβ Do not follow dependencies (default is0).no_install_recommendsβ Do NOT install any recommended packages (default is0).no_proxyβ Comma-separated list of domain extensions proxy should not be used for.offline_rootβ Specifies directory for offline root installation of packages.overlay_rootβ Specifies the root overlay.overwrite_no_ownerβ Allow overwrite of files not owned by a package (default is0).proxy_passwdβ Password to use with proxy authentication.proxy_userβ User name to use for proxy authentication.query-allβ Executes a query against all packages from all repositories, not just installed packages (default is0).signature_typeβ The type of signatures to check against:gpgβ GPG signature (binary)gpg-ascβ GPG Signature using ASCII ARMORopensslβ OpenSSL Signature Verification
sizeβ Print package size when listing available packages (default is0).ssl_ca_file(CURL) β CURL's SSL Certificate Authority file.ssl_ca_path(CURL) β CURL's SSL Certificate directory.ssl_cert(CURL) β Filename of client certificate.ssl_cert_type(CURL) β CURL's SSL Certificate Type:PEMβ PEM Format (default)DERβ DER Format
ssl_dont_verify_peer(CURL) β Don't verify SSL certificates (default is0).ssl_engine(CURL) β Selects the SSL crypto engine to use for cipher operations. Seecurl(1)for more details.ssl_key(CURL) β Filename of private SSL key.ssl_key_passwd(CURL) β Passphrase to ssl key specified byssl_key.ssl_key_type(CURL) β CURL's SSL Key Type:PEMβ PEM Format (default)DERβ DER Format
status_fileβ Location of the status file. This file contains all the status of all current/previously installed packages.tmp_dirβ Temp directory for unpacking a package before loading into the filesystem.transfer_timeout_ms(CURL) β Amount of time in ms allowed for a connection to be maintained. Default is0(never time out).verbosityβ Verbosity of output fromopkg(1)command. Verbosity levels:0β errors only1β normal messages (default)2β informative messages3β debug4β debug level 2
volatile_cacheβ Enables volatile cache (default is0). Volatile cache is located at the directory specified bycache_dirin the subdirectoryvolatile.
π the sign-off π
And that's the whole manual, bestie! This is from opkg version 0.8.0, dated January 2025. You're now officially the main character of package management. Go forth and configure. opkg(5) is iconic, and so are you. π
β¨π
π¦ where this page comes from
- nixos 26.05: opkg 0.8.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms