cavaliercoder / Go Rpm
Licence: bsd-3-clause
A native implementation of the RPM file specification in Go
Stars: ✭ 137
Labels
Projects that are alternatives of or similar to Go Rpm
Atom Check Updates
A CLI for easily updating Atom to the latest version on RPM or Debian-based systems.
Stars: ✭ 8 (-94.16%)
Mutual labels: rpm
Goreleaser
Deliver Go binaries as fast and easily as possible
Stars: ✭ 9,290 (+6681.02%)
Mutual labels: rpm
Dnfdragora
dnfdragora is a dnf frontend based on libyui abstraction
Stars: ✭ 65 (-52.55%)
Mutual labels: rpm
Ngx mruby Package Builder
Package Builder of ngx_mruby with Docker
Stars: ✭ 25 (-81.75%)
Mutual labels: rpm
Aliddns
aliyun ddns for golang【阿里云DDNS服务,用来将自己的动态IP同步到自己的域名解析服务器,安装方便,配置简单,默认支持Linux和MacOS以后台服务方式持续运行】
Stars: ✭ 136 (-0.73%)
Mutual labels: rpm
Fpm Within Docker
Leverage fpm inside pre-baked docker images in order to build and test native DEB and RPM packages.
Stars: ✭ 80 (-41.61%)
Mutual labels: rpm
Bodhi
Bodhi is a web-system that facilitates the process of publishing updates for a Fedora-based software distribution.
Stars: ✭ 114 (-16.79%)
Mutual labels: rpm
Yum Plugin Needs Restarting
YUM plugin listing processes using old files
Stars: ✭ 9 (-93.43%)
Mutual labels: rpm
Electron Builder
A complete solution to package and build a ready for distribution Electron app with “auto update” support out of the box
Stars: ✭ 11,653 (+8405.84%)
Mutual labels: rpm
Dnf
Package manager based on libdnf and libsolv. Replaces YUM.
Stars: ✭ 838 (+511.68%)
Mutual labels: rpm
Clickhouse Rpm Install
How to install clickhouse RPM packages
Stars: ✭ 136 (-0.73%)
Mutual labels: rpm
A native implementation of the RPM file specification in Go.
$ go get github.com/cavaliercoder/go-rpm
The go-rpm package aims to enable cross-platform tooling for yum/dnf/rpm written in Go (E.g. y10k).
Initial goals include like-for-like implementation of existing rpm ecosystem features such as:
- Reading of modern and legacy rpm package file formats
- Reading, creating and updating modern and legacy yum repository metadata
- Reading of the rpm database
package main
import (
"fmt"
"github.com/cavaliercoder/go-rpm"
)
func main() {
p, err := rpm.OpenPackageFile("golang-1.6.3-2.el7.rpm")
if err != nil {
panic(err)
}
fmt.Printf("Loaded package: %v - %s\n", p, p.Summary())
// Output: golang-0:1.6.3-2.el7.x86_64 - The Go Programming Language
}
Tools
This package also includes two tools rpmdump
and rpminfo
.
The code for both tools demonstrates some use-cases of this package. They are both also useful for interrogating RPM packages on any platform.
$ rpminfo golang-1.6.3-2.el7.x86_64.rpm
Name : golang
Version : 1.6.3
Release : 2.el7
Architecture: x86_64
Group : Unspecified
Size : 11809071
License : BSD and Public Domain
Signature : RSA/SHA256, Sun Nov 20 18:01:16 2016, Key ID 24c6a8a7f4a80eb5
Source RPM : golang-1.6.3-2.el7.src.rpm
Build Date : Tue Nov 15 12:20:30 2016
Build Host : c1bm.rdu2.centos.org
Packager : CentOS BuildSystem <http://bugs.centos.org>
Vendor : CentOS
URL : http://golang.org/
Summary : The Go Programming Language
Description :
The Go Programming Language.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].