• Stars
    star
    112
  • Rank 312,240 (Top 7 %)
  • Language
    Emacs Lisp
  • Created over 12 years ago
  • Updated over 9 years ago

Reviews

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

Repository Details

emacs-lisp version of the marmalade package repository

The Marmalade Service - A package repository in EmacsLisp

This is an EmacsLisp package to reimplement the marmalade-repo with Elnode. Natalie Weizenbaum wrote the original marmalade-repo with node.js and mongodb.

How to

  • Need an account? - make an issue on the Github and Nic will send you a mail with a confirmation link
  • Need to delete a package? - it's possible through the API with the marmalade-client package
  • Need to upload a package? - use the API throught the marmalade-client package

About

This reimplementation uses an Elnode application dealing with a filesystem of all packages. It's basically a file server app. It also follows the microservice model.

This packages includes conversion tools from the mongodb to the filesystem.

These are the things marmalade should do:

  • construct the package archive file from the package directory structure
    • the package archive is an index of all the packages in the repository.
  • allow the archive to be updated with uploads
  • provide the ELPA /package/ HTTP API for downloading packages
  • provide HTML front end to the /package/ HTTP API
  • provide EmacsLisp front end to the /package/ HTTP API
    • this will likely be a separate project
  • allow users to /register/ in order to upload packages
  • provide /profile/s for people who have registered
  • allow registered users to upload and upgrade packages
    • preferably from inside their emacs
    • and securely
  • allow registered users to be added as owners

Other marmalade things

It would be nice if marmalade provided better package discovery.

It would be nice if marmalade stored licences in a clear way and allowed you to use only safe licences if you wish.

How it works

The package is contained in the top level. Elpakit is used to build it.

marmalade-repo-test is a test directory containing packages used by the test scripts.

marmalade-repo-test/possible-packages contains stuff we don't have tests for but probably should have.

More Repositories

1

elnode

evented io webserver right inside your emacs.
Emacs Lisp
473
star
2

emacs-web

a useful HTTP client in EmacsLisp
Emacs Lisp
76
star
3

emacs-noflet

noflet - nic's overriding flet, for fleting functions for the purpose of decorating them
Emacs Lisp
72
star
4

emacs-db

very simple database for emacslisp, can also wrap other databases.
Emacs Lisp
56
star
5

emacs-ejit

Javascript compiler for EmacsLisp
Emacs Lisp
53
star
6

emacs-kv

Key/Value collection type functions: for alists, hashtables and plists. Useful stuff.
Emacs Lisp
48
star
7

elpakit

Let's you build repositories and archives of repositories.
Emacs Lisp
28
star
8

pgdevbox

postgresql dev box - a simple way to get pg working locally
HTML
28
star
9

docker-shell-deploy

a shell script to help with deploying dockers
26
star
10

emacs-fakir

functions and macros to fake bit of Emacs core libraries, like files and processes.
Emacs Lisp
26
star
11

eshell-manual

eshell is great but lacks a good manual, someone wrote one. This packages it.
Emacs Lisp
20
star
12

emacs-contributor-guide

The success of Emacs depends on participation from people like you.
18
star
13

org-presie

Very very very simple presentation mode for Org.
Emacs Lisp
18
star
14

elwikicreole

A WikiCreole parser for EmacsLisp
Emacs Lisp
17
star
15

emacs-world-time-mode

A mode showing your world time alist formatted as a list of whole days with the differing times.
Emacs Lisp
15
star
16

shoes-off

an IRC bouncer written in EmacsLisp
Emacs Lisp
13
star
17

emacs-nm

Emacs interface to Gnome's Network Manager
Emacs Lisp
12
star
18

emacs-pipe

use pipes to communicate with processes in Emacs
Emacs Lisp
11
star
19

md

a maildir client and library
Python
11
star
20

elnode-org

tools and utils for hacking org files with elnode
Emacs Lisp
10
star
21

emacs-maildir

maildir based mail user agent just in emacs-lisp
Emacs Lisp
10
star
22

emacs-uuid

The UUID module from the EmacsWiki, initially by someone called James Mastros.
Emacs Lisp
10
star
23

gnudoc-js

An example GNU doc viewer as a single page browser app
JavaScript
10
star
24

nodejs-self-signed-cert-server-and-client

How to do a self signed cert in nodejs with a client and a server
JavaScript
10
star
25

keepie

Keep passwords and hand them out to authorized endpoints.
JavaScript
9
star
26

phantomjsel

phantomjs handling for emacs
Emacs Lisp
9
star
27

emacs-lxc

lxc tools for emacs
Emacs Lisp
9
star
28

java-fake-socket

How to fake sockets with real connectivity but no wires.
Java
9
star
29

emacs-sql-postgres

Nic's tools for wrangling postgres in Emacs. Notably plpgsql indentation.
Emacs Lisp
9
star
30

emacs-in-a-docker

Dockerfile to build emacs
Shell
9
star
31

docker-bash-completion

Docker completion for the BASH shell
9
star
32

rcirc-notify

Notifications for rcirc, the emacs IRC client
Emacs Lisp
8
star
33

cranker

A pair of servers to implement a scaling scheme.
Clojure
7
star
34

emacs-nic-java-ac

A relic. My old Java complete stuff. I've toyed with Java again and this may be useful.
Emacs Lisp
7
star
35

emacs-meetup

meetup integration with emacs
Emacs Lisp
7
star
36

emacs-clojure-env

Build a clojure-env from inside Emacs
Emacs Lisp
6
star
37

virtualbox

hacking on virtualbox to allow adding limiting of what boxes you start
C
5
star
38

cards

A p2p card game.
JavaScript
5
star
39

elpastebin

emacs lisp interface to pastebin
Emacs Lisp
5
star
40

niclein

simple leiningen integration for Emacs
Emacs Lisp
5
star
41

jarnode

Make node apps sit inside uberjars
C
5
star
42

emacs-twaddle

A sane Twitter client for Emacs.
Emacs Lisp
5
star
43

eimp

Rather good Emacs Image Manipulation library. This is not mine, I am just adopting it for a few reasons.
Emacs Lisp
5
star
44

creole-mode

A WikiCreole mode for Emacs.
Emacs Lisp
4
star
45

curl-url-retrieve

url-retrieve with curl
Emacs Lisp
4
star
46

elpad

elnode pad - collab editing in emacs via the web
JavaScript
4
star
47

java-simple-sse-client

A simple and sadly synchronous Java EventSource
Java
4
star
48

emacs-provisioner-vagrant

Provision Emacs instances and stuff on top of it with Vagrant
Ruby
4
star
49

emacs-mp

multi-procesing for emacs, using daemons as a concurrency enabler.
Emacs Lisp
4
star
50

org-email

Use org as a contact database
Emacs Lisp
4
star
51

elisp-indexer

massive load of work to slightly improve the emacs help system
Emacs Lisp
4
star
52

emacs-docker-swarm

a docker for swarming around emacs
Shell
3
star
53

emacs-marmalade-upload

a simple marmalade upload client for uploading packages from inside Emacs
Emacs Lisp
3
star
54

emacs-swarmhacker

Simple tools for swarm hacking.
Emacs Lisp
3
star
55

nicsblog

Nic's blog files and control code
JavaScript
3
star
56

crontub

a tub of cron
Python
3
star
57

emacsbites

webiste driving my emacs tapas
Emacs Lisp
3
star
58

emacs-proc-net

Manage Emacs Network Processes - network connections and listening sockets.
Emacs Lisp
3
star
59

sqlserver-event-demo

a demo of event sending with MS SQL Server and Node JS
JavaScript
3
star
60

skinny

a blog engine so cool it wears skinny jeans
Emacs Lisp
2
star
61

emacs-git-draft

draft a commit log change from the git index diff
Emacs Lisp
2
star
62

elnode-agenda

get org-mode agenda in your browser
Emacs Lisp
2
star
63

emacs-initd

emacs daemon startup and service script
2
star
64

pyproxyfs

a simple proxy filesystem object for python, with a simple mock.
Python
2
star
65

emacs-lisp-editing-tools

tools for lisp editing
Emacs Lisp
2
star
66

ntlm-java

java ntlm proxy
Java
2
star
67

secondarys

csv files to build lists of secondarys
Python
2
star
68

timelog

a simple shell script time logging application via dhcp
Shell
2
star
69

emacs-js-check

Do eslint of JS files as you type.
Emacs Lisp
2
star
70

lxmlproc

an lxml version of xsltproc
Python
2
star
71

emacs-plsql

Kal Hodgson's plsql mode
Emacs Lisp
2
star
72

java-mindex

Maven Indexer - index all your maven repository
Java
2
star
73

emacs-ci-demo

Demonstration repo for emacs vagrant provisioning.
Emacs Lisp
2
star
74

elwikidoc

make creole wiki from emacs lisp functions
Emacs Lisp
2
star
75

elnode-and-lisp-pres

Elnode and the history of Lisp: a presentation with less beards than you think.
Emacs Lisp
2
star
76

emacs-framesize

allow frame font size to be controlled with keys.
Emacs Lisp
1
star
77

nics-emacs-config

A new config for emacs for my Windows (!) machine
Emacs Lisp
1
star
78

json-editor

a browser based JSON editor which could be extended with different schemas
JavaScript
1
star
79

elisp-process

Elisp process tools. Mainly this is tools for starting and stopping types of Emacs process.
Emacs Lisp
1
star
80

emacs-vagrant-box-nginx

nginx config to download the emacs vagrant box
1
star
81

django-muphan

A Django media hub handler app
Python
1
star
82

nics-json-parser

a JSON parser that models the actual JSON document accurately - so it's good for use with a schema.
JavaScript
1
star
83

seville-marmalade

marmalade provisioning
Puppet
1
star
84

emacs-livecoding

live coding helpers
Emacs Lisp
1
star
85

graph-table

a webservice to help graphing data.
Python
1
star
86

nics-sheet

having a go at making a web based spreadsheet thing
JavaScript
1
star
87

emacs-isea

Inferior shell to an Emacs Daemon
Emacs Lisp
1
star
88

plaintalk

just a thing
ActionScript
1
star
89

emacs-ertx

Extensions for Emacs ERT
Emacs Lisp
1
star
90

pinpop-shop

A little ecommerce system
JavaScript
1
star
91

emacs-s-buffer

string operations on emacs buffers
Emacs Lisp
1
star
92

emacs-dists

Nic's emacs dists
Python
1
star
93

wush

web user shell
JavaScript
1
star
94

elnode-linky

A silly little link app
Emacs Lisp
1
star
95

emacs-db-pg

Postgresql adapter for emacs-db. Uses Hstores to model a kv store.
Emacs Lisp
1
star
96

apacheawk

make awk useful for parsing access log files
Awk
1
star
97

emacs-spork

a spork is a combination of a fork and spoon. yes.
Emacs Lisp
1
star
98

emacs-atlassian

confluence editing tool
Emacs Lisp
1
star
99

xfmedia_scrobbler

a scrobbler for xfmedia
1
star
100

npm-forge-ca-4-tests

A test CA
JavaScript
1
star