• Stars
    star
    8
  • Rank 2,031,227 (Top 42 %)
  • Language
    Shell
  • License
    MIT License
  • Created almost 7 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

(To) mirror Emacs Lisp Package Archive(s)

mirror-elpa

(To) Mirror Emacs Lisp package archives. Used to create and maintain mirrors under Git repository.

Available mirrors:

Note that currently only GitLab and GitHub are supported out of box as a remote for the mirror. Though you can use mirror-elpa to maintain local mirror or mirror on any other Git hosting. See Usage section for more information.

Prerequisites

The following software must be installed on your system:

  • Git
  • Emacs
  • rsync

Usage

In order to use mirror-elpa script, you need to prepare configuration file. You can do it manually or use configure script provided by this repository. Example of configuration file:

mirror_path="$XDG_CACHE_HOME/elpa-mirror"
mirror_host="github.com"
mirror_owner="d12frosted"
mirror_repo="elpa-mirror"
access_login="$ACCESS_LOGIN"
access_token="$ACCESS_TOKEN"
commit_name="Golem"
commit_email="[email protected]"
elpa_clone_path="$XDG_CACHE_HOME/elpa-clone"

function git_config_hook {
  git config commit.gpgsign false
}

Some explanations:

  1. mirror_path is location of mirror repository on your disk.
  2. mirror_host, mirror_owner and mirror_repo used to build url to your remote mirror repository. Repository URL is build like this:
    mirror_url="https://${access_login}:${access_token}@${mirror_host}/${mirror_owner}/${mirror_repo}.git"
        
  3. access_login is user with access to repository.
  4. access_token is password/secret/token that is used for authentication. On GitHub and GitLab you can create access tokens and use them (which is recommended).
  5. commit_name and commit_email used as committer information.
  6. elpa_clone_path is location of elpa_clone script for Emacs.

The configuration wizard is not maintained, but you can give it a try, as it should help you with token creation.

./configure

Using with CRON

$ ./configure
$ make install

You can also specify how often to sync mirror when running make install (defaults to every 4 hours) and location to resulting configuration file (defaults to $XDG_CONFIG_HOME/mirror-elpa.sh:

$ make install SCHEDULE="0 0 * * *" CONFIG_FILE="~/mirror-elpa.sh"

SCHEDULE can be set to any valid CRON expression.

Credits

More Repositories

1

homebrew-emacs-plus

Emacs Plus formulae for the Homebrew package manager
Ruby
2,143
star
2

vulpea

A collection of functions for note taking based on `org` and `org-roam`.
Emacs Lisp
222
star
3

flyspell-correct

Distraction-free words correction with flyspell via selected interface.
Emacs Lisp
196
star
4

environment

dotfiles
Emacs Lisp
121
star
5

elpa-mirror

Mirror for some Emacs package archives
Emacs Lisp
96
star
6

dotbot-brew

Install brew packages using dotbot
Python
42
star
7

vino

It's your cellar, your dear cantina.
Emacs Lisp
36
star
8

counsel-osx-app

Launch OSX applications via ivy interface
Emacs Lisp
24
star
9

UnityLibrarySwitcher

Unity plugin for switching build targets, git branches without endless assets reimport. Not maintained anymore.
C#
19
star
10

git-config-manager

Manage git repository configurations with ease
Haskell
8
star
11

d12frosted.io

Personal site
Haskell
8
star
12

orgability

Reading list manager for Emacs with offline access support.
Emacs Lisp
7
star
13

publicatorg

Make your vulpea notes public
Emacs Lisp
5
star
14

fancy-yank

apply transformation upon yanking
Emacs Lisp
4
star
15

emacs-addiction-mode

M-x doctor instead of C-x C-c
Emacs Lisp
4
star
16

barberry.io

Emacs Lisp
4
star
17

emacs-ukrainian-input-method

Ukrainian macOS-like input method
Emacs Lisp
4
star
18

org-drawer-list

Tame your lists in a drawer
Emacs Lisp
3
star
19

emacs-plus-basis

Emacs Lisp
3
star
20

CanonicalPath

Abstract data type for canonical paths with some pretty operations. Not maintained anymore.
Haskell
3
star
21

env-extra

Safe helpers for accessing and modifying environment variables
Haskell
2
star
22

talks

TeX
2
star
23

d12frosted

1
star
24

path-extra

Path helpers for my personal projects
Haskell
1
star
25

bomberman-player

Haskell
1
star
26

fish-mode

Major mode for editing fish shell scripts
Emacs Lisp
1
star