Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

gembuild

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

gembuild

  • 1.0.0
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source

Gembuild

Build Status Coverage Status Code Climate Inline Documentation

Create PKGBUILDs for ruby gems.

Configuration

Upon first run the gem will prompt for your name and email address to use in the maintainer field in PKGBUILDs and to use as the git author. If you have already configured git it will confirm the values that it finds. It will also ask where to store package repositories. All information is then saved in ~/.gembuild which is just a simple YAML file and can be easily changed using your favorite text editor.

Usage

Simple usage to create/update a package for a gem:

$ bundle exec bin/gembuild mina

This will checkout the AUR package for ruby-mina, fetch the latest version of the gem and update the PKGBUILD accordingly, and then regenerate the metadata using mksrcinfo and commit all changes.

Advanced Usage

There are four main parts: the AUR scraper, the rubygems scraper, the PKGBUILD and the project.

AUR Scraper

The AUR scraper is used to get version information about a package currently on the AUR.

s = Gembuild::AurScraper.new('ruby-mina')
s.scrape!
RubyGems Scraper

The RubyGems scraper gets the rest of the information needed for the PKGBUILD by making several queries to rubygems.org. N.B. that it skips any version marked as a "prerelease".

s = Gembuild::GemScraper.neW('mina')
s.scrape!
PKGBUILD

The Pkgbuild class is actually responsible for creating a PKGBUILD for a gem.

Gembuild::Pkgbuild.create('mina')
Project

The Project class is what checks out the repository from the AUR, configures git for it, makes sure there is a .gitignore and commits all changes after creating or updating the PKGBUILD.

Gembuild::Project.new('mina').clone_and_commit!

License

This project is licensed under the GPLv3 or any later version. For more information please see the LICENSE file included with the project or https://www.gnu.org/licenses.

FAQs

Package last updated on 08 Jan 2016

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc