Awesome
pick-rpm
If you are just looking for an RPM for pick, check the Releases page
Quick install
More options/details/commentary below, but to quickly get going:
dnf install -y dnf-plugins-core && \
dnf copr enable -y freedomben/pick && \
dnf install -y pick
Install the rpm from the COPR repo
There is a COPR repo you can enable to get RPMs for pick. This will be kept up to date as much as possible and works on a variety of systems. It also comes with GPG signing which is good for security. The COPR repo is built using the SRPM generated by this repository so you can build yourself if desired using these scripts.
Until the RPM is officially part of Fedora/EPEL, the COPR repo is the recommended approach to keep things automatic.
Some people (myself included) tend to eschew COPR repos simply because they often fall out of date and may need to be disabled in the future if the base system moves on and the maintainer doesn't stay on top of it. I don't think that will be a problem here as:
- There are few dependencies for pick so builds should "just work" for a while as long as new GCC doesn't break the build
- I use this myself so I'll do my best to keep it up to date
However if you don't like COPR repos, feel free to use the RPMs available directly on the release page (also available using the wget
commands below):
1. Install plugin for DNF if not already install:
Note: You only need this for the dnf copr enable
command below. If you're going to make the .repo file yourself you can skip this step.
dnf install -y dnf-plugins-core
2. Enable the COPR repo
You can enable the COPR repo with a DNF command if you like:
dnf copr enable freedomben/pick
Or you can manage your own .repo file for you distribution. You can find the full list on the COPR repo page. If you use Fedora 33, it is here. You can create the file directly if you want. I'll call mine /etc/yum.repos.d/freedomben-copr-pick.repo
but you can name yours as you like:
/etc/yum.repos.d/freedomben-copr-pick.repo
[copr:copr.fedorainfracloud.org:freedomben:pick]
name=Copr repo for pick owned by freedomben
baseurl=https://download.copr.fedorainfracloud.org/results/freedomben/pick/fedora-$releasever-$basearch/
type=rpm-md
skip_if_unavailable=True
gpgcheck=1
gpgkey=https://download.copr.fedorainfracloud.org/results/freedomben/pick/pubkey.gpg
repo_gpgcheck=0
enabled=1
enabled_metadata=1
3. Install the pick package
dnf install pick
If this is your first time installing, it will ask you to accept my GPG key.
4. Profit!
Pick should be installed and working!
$ command -v pick
/usr/bin/pick
5. Quick test
$ ls -la / | pick
And you should be able to narrow down the list with fuzzy search.
Installing the RPM directly
If you run Fedora and want to install the latest:
Fedora 33 x86_64 - pick v4.0.0
wget 'https://github.com/FreedomBen/pick-rpm/releases/download/v4.0.0/pick-4.0.0-1.fc33.x86_64.rpm'
dnf install pick-4.0.0-1.fc33.x86_64.rpm
Fedora 32 x86_64 - pick v4.0.0
wget 'https://github.com/FreedomBen/pick-rpm/releases/download/v4.0.0/pick-4.0.0-1.fc32.x86_64.rpm'
dnf install pick-4.0.0-1.fc32.x86_64.rpm
Fedora 31 x86_64 - pick v3.0.1
wget 'https://github.com/FreedomBen/pick-rpm/releases/download/v3.0.1/pick-3.0.1-1.fc31.x86_64.rpm'
dnf install pick-3.0.1-1.fc31.x86_64.rpm
Building the RPMs
There are a few scripts that will build RPMs. You must have Podman installed to run them as the RPM build happens in a container.
build.sh
: This is the entrypoint for a single build.build-all.sh
: Builds all versions of Pick for all supported distros.build-all-pick-versions.sh
: Builds RPMs for specified version of Pick for all supported distros.build-latest-version-f32.sh
: Builds latest pick version for Fedora 32.
Will these be available in the repositories?
Yes hopefully. That is the goal. The todo list:
- ARM builds/RPMs
- Stand up COPR repo
- man pages working in RPM
- Meet all requirements for inclusion in Fedora
- Get package accepted into Fedora repositories
- Get package accepted into EPEL
What about ARM?
Coming soon, as long as pick will build on ARM
ARM RPMs are now available! Get them on the releases page.
Why aren't these packages signed?
COPR builds are signed, RPMs from Github are not. They'll be signed when included in Fedora repos as well.
Things that don't work all the way yet
- Man pages