Skip to main content

A library and command for interacting with the GITenberg books project

Project description

# Gitberg
[![Build Status](https://travis-ci.org/gitenberg-dev/gitberg.svg?branch=master)](https://travis-ci.org/gitenberg-dev/gitberg)
[![PyPI version](https://img.shields.io/pypi/v/gitberg.svg)](https://pypi-hypernode.com/pypi/gitberg)

[GITenberg](https://gitenberg.org/) is a project to collectively curate ebooks on GitHub.
[Gitberg](https://github.com/gitenberg-dev/gitberg) is a command line tool to automate tasks on books stored in git repositories.


## Usage

This project provides a `gitberg` command that does the following:

+ `gitberg fetch <bookid>` fetches books from PG
+ `gitberg make <bookid>` makes a local git repo with extra files
+ `gitberg push <bookid>` creates a repo on github and pushes to it (one per book)
+ `gitberg all <bookid> <bookend>` fetches, makes and pushes a range of books
+ `gitberg list <bookid_start>` fetches, makes and pushes a range of books

+ `gitberg apply <action> <book_repo_name>` applies an action
+ `gitberg metadata <bookid>` prints the yaml metadata


### Examples

```
gitberg list --rdf_library /Documents/gitenberg/cache/epub 181,565,576

```

### Config

Some commands require a config file before they can be used.
These commands will ask for config values to make a correct configuration.
The config file in linux is located at `~/.config/gitberg/config.yaml`.
If the saved configuration fails basic sanity checks (like files/folders being
missing), these commands will ask for the config values again.

Main config values:

gh_user: <your github account name>
gh_password: <your github account password>
library_path: '~/data/library'
rdf_library: location of your cache of the PG RDF demp

To push to github, you will need to configure SSH keys. See [Github's documentation}(https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/)

You may also provide values for these as environment variables named
gitberg\_gh\_user etc (case insensitive).

### Development

To run project in development mode clone the project and do:

pip install .

some commands will require you to run gitberg from the cloned directory.

## Testing

To run project tests do:

python setup.py test


## Packaging

This project is available as a python package. To install, use

pip install gitberg

To build this python package, use `setup.py`

python setup.py sdist

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gitberg-0.5.1.tar.gz (2.2 MB view details)

Uploaded Source

File details

Details for the file gitberg-0.5.1.tar.gz.

File metadata

  • Download URL: gitberg-0.5.1.tar.gz
  • Upload date:
  • Size: 2.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/2.7

File hashes

Hashes for gitberg-0.5.1.tar.gz
Algorithm Hash digest
SHA256 7399d447349e5ddce71e947d95e102aae939e6055a1669b60efb982e8e9c4736
MD5 5154faaed5d728b714401a94540fb49d
BLAKE2b-256 316fdd317a76495e5ac91e5d641fbb1b07bf5484d7669ff12fbf12b11a2cc285

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page