Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

x-cmd RPM Repository

https://www.x-cmd.com/rpm/ — a yum / dnf / zypper repository that hosts the official x-cmd RPM package.

This repository is published verbatim under https://www.x-cmd.com/rpm/. Any Packages/*.rpm together with the generated repodata/ is a standard RPM repository that can be consumed directly by dnf, yum, or zypper.

The package itself is built and released upstream at x-cmd/release; this repo only mirrors the .rpm artifacts and maintains the repository metadata.


Install

Fedora / RHEL / CentOS / Rocky / Alma (dnf)

# 1. Enable this repository
sudo dnf install -y dnf-plugins-core
sudo dnf config-manager --add-repo https://www.x-cmd.com/rpm/x-cmd.repo

# 2. Install x-cmd
sudo dnf install -y x-cmd

Or, without dnf-plugins-core, drop the repo file manually:

sudo curl -fsSL https://www.x-cmd.com/rpm/x-cmd.repo -o /etc/yum.repos.d/x-cmd.repo
sudo dnf install -y x-cmd

Older RHEL / CentOS 7 (yum)

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://www.x-cmd.com/rpm/x-cmd.repo
sudo yum install -y x-cmd

openSUSE (zypper)

sudo zypper ar -f https://www.x-cmd.com/rpm/ x-cmd
sudo zypper refresh
sudo zypper in x-cmd

After install, verify with:

x --version

Repository layout

.
├── Packages/                # the hosted .rpm artifacts
│   └── x-cmd_0.9.9_all.rpm
├── repodata/                # repository metadata generated by createrepo_c
│   ├── repomd.xml           #   the entry point clients fetch first
│   ├── <sha>-primary.xml.gz
│   ├── <sha>-filelists.xml.gz
│   └── <sha>-other.xml.gz
├── x-cmd.repo               # ready-to-use dnf/yum repo definition
└── README.md

baseurl is the repository root, so the package <location href> is the relative path Packages/x-cmd_0.9.9_all.rpm.

The package is architecture-independent (noarch), so a single flat layout serves every architecture.


Adding a new release

  1. Drop the new .rpm into Packages/ (optionally remove superseded ones).

  2. Regenerate the metadata with createrepo_c. There is no createrepo on macOS, so run it through a container:

    docker run --rm -v "$PWD:/repo" debian:latest bash -lc '
      apt-get update -qq &&
      apt-get install -y -qq --no-install-recommends createrepo_c >/dev/null &&
      createrepo_c --general-compress-type=gz --basedir /repo /repo'

    Metadata is gzip-compressed (--general-compress-type=gz) for maximum client compatibility (classic yum on RHEL 7 cannot read zstd metadata).

  3. Commit Packages/*.rpm, the updated repodata/, and push. The site refreshes from this branch.


Notes

  • Packages and metadata are currently unsigned (gpgcheck=0). Enable GPG signing once a key is published.
  • Source RPM and build provenance live in x-cmd/release.
  • License of the x-cmd package: Apache-2.0.

About

A yum / dnf / zypper repository that hosts the official x-cmd RPM package.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors