69 lines
2.1 KiB
Nix
69 lines
2.1 KiB
Nix
|
{ stdenv, fetchFromGitHub, makeWrapper, callPackage, nodejs, python, utillinux, graphicsmagick }:
|
||
|
|
||
|
with stdenv.lib;
|
||
|
|
||
|
let
|
||
|
nodePackages = callPackage (import ../../../top-level/node-packages.nix) {
|
||
|
inherit stdenv nodejs fetchurl fetchgit;
|
||
|
neededNatives = [ python ] ++ optional stdenv.isLinux utillinux;
|
||
|
self = nodePackages;
|
||
|
generated = ./node-packages.nix;
|
||
|
};
|
||
|
|
||
|
in nodePackages.buildNodePackage rec {
|
||
|
version = "git-2015-11-09";
|
||
|
name = "pump.io-${version}";
|
||
|
|
||
|
src = fetchFromGitHub {
|
||
|
owner = "e14n";
|
||
|
repo = "pump.io";
|
||
|
rev = "2f8d6b3518607ed02b594aee0db6ccacbe631b2d";
|
||
|
sha256 = "1xym3jzpxlni1n2i0ixwrnpkx5fbnd1p6sm1hf9n3w5m2lx6gdw5";
|
||
|
};
|
||
|
|
||
|
deps = (filter (v: nixType v == "derivation") (attrValues nodePackages));
|
||
|
|
||
|
buildInputs = [ makeWrapper ];
|
||
|
|
||
|
postInstall = ''
|
||
|
for prog in pump pump-authorize pump-follow pump-post-note pump-register-app pump-register-user pump-stop-following; do
|
||
|
wrapProgram "$out/bin/$prog" \
|
||
|
--set NODE_PATH "$out/lib/node_modules/pump.io/node_modules/" \
|
||
|
--prefix PATH : ${graphicsmagick}/bin:$out/bin
|
||
|
done
|
||
|
'';
|
||
|
|
||
|
passthru.names = ["pump.io"];
|
||
|
|
||
|
meta = {
|
||
|
description = "Social server with an ActivityStreams API";
|
||
|
homepage = http://pump.io/;
|
||
|
license = licenses.asl20;
|
||
|
platforms = platforms.unix;
|
||
|
maintainers = [ maintainers.rvl ];
|
||
|
longDescription = ''
|
||
|
This is pump.io. It's a stream server that does most of what
|
||
|
people really want from a social network.
|
||
|
|
||
|
What's it for?
|
||
|
|
||
|
I post something and my followers see it. That's the rough idea
|
||
|
behind the pump.
|
||
|
|
||
|
There's an API defined in the API.md file. It uses
|
||
|
activitystrea.ms JSON as the main data and command format.
|
||
|
|
||
|
You can post almost anything that can be represented with
|
||
|
activity streams -- short or long text, bookmarks, images,
|
||
|
video, audio, events, geo checkins. You can follow friends,
|
||
|
create lists of people, and so on.
|
||
|
|
||
|
The software is useful for at least these scenarios:
|
||
|
|
||
|
* Mobile-first social networking
|
||
|
* Activity stream functionality for an existing app
|
||
|
* Experimenting with social software
|
||
|
'';
|
||
|
};
|
||
|
}
|