koji-install: CLI tool for installing rpms directly from Fedora Koji

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

koji-install can install a koji build/task of a package locally. Koji is the RPM-based buildsystem of Fedora Linux and CentOS.


[Skip to Readme]

Properties

Versions 0.2.0, 0.3, 0.4, 0.5, 0.5
Change log ChangeLog.md
Dependencies base (<5), directory, extra, filepath, Glob, http-common (<0.8.3.4), http-directory (>=0.1.9), koji (>=0.0.2), rpm-nvr (>=0.1.1), simple-cmd, simple-cmd-args, xdg-userdirs [details]
License BSD-3-Clause
Copyright 2021 Jens Petersen <juhpetersen@gmail.com>
Author Jens Petersen <juhpetersen@gmail.com>
Maintainer Jens Petersen <juhpetersen@gmail.com>
Category Utility
Home page https://github.com/juhp/koji-install
Bug tracker https://github.com/juhp/koji-install/issues
Source repo head: git clone https://github.com/juhp/koji-install.git
Uploaded by JensPetersen at 2021-12-28T08:50:17Z

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Readme for koji-install-0.5

[back to package description]

koji-install

A CLI tool to download and install rpms from a Koji build or task.

Koji is a RPM package buildsystem used by Fedora, CentOS, and some other projects.

By default it only downloads binaries of already-installed subpackages, but there are options to list and select or exclude specific subpackages.

Note koji-install is intended for development and testing purposes and should not be necessary/used normally on production systems, but it can be very helpful for quickly testing an specific package build or update.

Usage

By default it uses Fedora Koji.

$ koji-install podman

will download the latest build for your Fedora version, and try to install it. Use --disttag suffix to select a different Fedora version.

$ koji-install TASKID --exclude "*-devel"

will install all the non-devel subpackages from the task.

One can use --hub to specify a different Koji hub build service.

Selecting subpackages

By default only installed subpackages are downloaded and updated, but the following options change the behavior:

--package: select subpackages by name or glob pattern (this doesn't work currently on multiple builds/tasks)

--exclude: exclude subpackages by name or glob pattern

--all: install all subpackages

--ask: ask about each subpackage

Help

$ koji-install --help
Download and install latest package build from Koji tag.

Usage: koji-install [--version] [-n|--dry-run] [-D|--debug] [-H|--hub HUB]
                    [-P|--packages-url URL] [-l|--list]
                    [(-a|--all) | (-A|--ask) | [-p|--package SUBPKG]
                      [-x|--exclude SUBPKG]] [-d|--disttag DISTTAG]
                    [(-R|--nvr) | (-V|--nv)] PKG|NVR|TASKID...
  HUB = fedora, stream, rpmfusion, or URL

Available options:
  -h,--help                Show this help text
  --version                Show version
  -n,--dry-run             Don't actually download anything
  -D,--debug               More detailed output
  -H,--hub HUB             KojiHub shortname or url [default: fedora]
  -P,--packages-url URL    KojiFiles packages url [default: Fedora]
  -l,--list                List builds
  -a,--all                 all subpackages
  -A,--ask                 ask for each subpackge [default if not installed]
  -p,--package SUBPKG      Subpackage (glob) to install
  -x,--exclude SUBPKG      Subpackage (glob) not to install
  -d,--disttag DISTTAG     Use a different disttag [default: .fc35]
  -R,--nvr                 Give an N-V-R instead of package name
  -V,--nv                  Give an N-V instead of package name

Installation

Builds for fedora are available in copr.

Build

cabal-rpm builddep && cabal install or stack install.