From: ng0 <ngillmann@runbox.com>
To: guix-devel@gnu.org
Subject: Re: [PATCH 4/4] gnu: Add psyced.
Date: Thu, 29 Sep 2016 10:44:32 +0000 [thread overview]
Message-ID: <87fuoj0yun.fsf@we.make.ritual.n0.is> (raw)
In-Reply-To: <20160929103810.10273-4-ngillmann@runbox.com>
Like in the old patch (I don't know how to pass git sendemail the root
of another thread), this is not a finished patch but I require input on
this. I have to debug by writing the service.
ng0 <ngillmann@runbox.com> writes:
> * gnu/packages/psyc.scm (psyced): New variable.
> ---
> gnu/packages/psyc.scm | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 103 insertions(+)
>
> diff --git a/gnu/packages/psyc.scm b/gnu/packages/psyc.scm
> index 75d861e..cc1da6e 100644
> --- a/gnu/packages/psyc.scm
> +++ b/gnu/packages/psyc.scm
> @@ -223,3 +223,106 @@ multi user virtual environments on the internet. This technology is used for
> MUDs and also the psyced implementation of the Protocol for SYnchronous Conferencing (PSYC). psycLPC is a fork of LDMud with some new features and
> many bug fixes.")
> (license license:gpl2))))
> +
> +;; XXX: We need a service for this which makes it functional, including
> +;; copying initial data around.
> +(define-public psyced
> + (let* ((commit "18e72b74ccc4edef58751475d15138fb1300a3b1")
> + (revision "1"))
> + (package
> + (name "psyced")
> + (version (string-append "20160830-" revision "." (string-take commit 7)))
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "git://git.psyced.org/psyced")
> + (commit commit)))
> + (file-name (string-append name "-" version "-checkout"))
> + (sha256
> + (base32
> + "1h2cbb14lvnxyqf9g35h78d796hyhafg3h73jv69z6j2cvhka9r2"))))
> + (build-system gnu-build-system)
> + (inputs
> + `(("perl" ,perl)))
> + ;; psyced needs psyclpc at runtime, specifically you will also not
> + ;; be able to use psyced witout psyclpc.
> + (native-inputs
> + `(("pkg-config" ,pkg-config)))
> + (propagated-inputs
> + `(("psyclpc" ,psyclpc)))
> + (arguments
> + `(#:tests? #f ; No tests
> + #:phases
> + (modify-phases %standard-phases
> + (delete 'configure) ; No configure
> + (delete 'build) ; no make build needed
> + ;; Much of what install.sh used to do is now handled by psyconf. Upstream
> + ;; reference is the Gentoo ebuild in the youbroketheinternet-overlay
> + ;; (https://gnunet.org/git/) where equal ways of installing psyced are applied
> + (replace 'install
> + (lambda* (#:key outputs #:allow-other-keys)
> + (let* ((out (assoc-ref outputs "out"))
> + (bin (string-append out "/bin")) ;symlink it?
> + (doc (string-append out "/share/doc"))
> + ;; sandbox in /opt/psyced/world:
> + (opt (string-append out "/opt/psyced"))
> + (var (string-append out "/var/psyced"))
> + (vard (string-append var "/data"))
> + (vardpe (string-append vard "/person"))
> + (vardpl (string-append vard "/place"))
> + (varcon (string-append var "/config"))
> + (etcpsy (string-append out "/etc/psyc")) ;symlink to /
> + (varlp (string-append out "/var/log/psyced")) ;symlink to /
> + (varlpp (string-append varlp "/place"))) ;symlink to /
> + (mkdir-p bin)
> + (mkdir-p doc)
> + (mkdir-p opt)
> + (mkdir-p var)
> + (mkdir-p vard)
> + (mkdir-p vardpe)
> + (mkdir-p vardpl)
> + (mkdir-p varcon)
> + (mkdir-p etcpsy)
> + (mkdir-p varlp)
> + (mkdir-p varlpp)
> +
> + (copy-recursively "bin" bin)
> +
> + (install-file "config/psyced.ini" etcpsy)
> +
> + (install-file "AGENDA.txt" doc)
> + (install-file "CHANGESTODO" doc)
> + (install-file "COPYLEFT.txt" doc)
> + (install-file "LICENSE.txt" doc)
> +
> + (copy-recursively "pike" opt)
> + (copy-recursively "place" opt)
> + (copy-recursively "run" opt)
> + (copy-recursively "tor" opt)
> + (copy-recursively "config" opt)
> + (copy-recursively "trust" opt)
> + (copy-recursively "utility" opt)
> + (copy-recursively "world" opt)
> + #t)))
> + (add-after 'install 'wrap-programs
> + (lambda* (#:key outputs #:allow-other-keys)
> + ;; Make sure all executables in "bin" find the Perl modules
> + ;; provided by this package at runtime.
> + (let* ((out (assoc-ref outputs "out"))
> + (bin (string-append out "/bin/"))
> + (path (string-append out "/lib/perl5/site_perl")))
> + (for-each (lambda (file)
> + (wrap-program file
> + `("PERL5LIB" ":" prefix (,path))))
> + (find-files bin "\\.*$"))
> + #t))))))
> + (home-page "http://www.psyced.org")
> + (synopsis "Server for Federated Messaging and Chat over PSYC, IRC, XMPP, and more")
> + (description
> + "psyced is a scalable multi-protocol multi-casting chat, messaging
> +and social server solution to build decentralized chat networks upon.
> +Powerful, not bloated, not too hard to get into. It supports the
> +following protocols and formats: PSYC, XMPP S2S, IRC, TELNET, HTTP, SMTP,
> +OAuth, XML, RSS. It also has limited/experimental code for the following
> +things: Clients using XMPP C2S, Java Applets, Status.Net, WAP, NNTP.")
> + (license license:gpl2))))
> --
> 2.10.0
>
>
--
ng0
next prev parent reply other threads:[~2016-09-29 10:44 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-29 10:38 [PATCH 1/4] gnu: Add perl-net-psyc ng0
2016-09-29 10:38 ` [PATCH 2/4] gnu: Add libpsyc ng0
2016-10-30 5:57 ` Ricardo Wurmus
2016-09-29 10:38 ` [PATCH 3/4] gnu: Add psyclpc ng0
2016-10-30 6:03 ` Ricardo Wurmus
2016-10-30 12:46 ` ng0
2016-09-29 10:38 ` [PATCH 4/4] gnu: Add psyced ng0
2016-09-29 10:44 ` ng0 [this message]
2016-10-30 5:42 ` Ricardo Wurmus
2016-10-30 5:48 ` Ricardo Wurmus
2016-10-02 1:46 ` [PATCH 1/4] gnu: Add perl-net-psyc Leo Famulari
2016-10-02 10:35 ` ng0
2016-10-04 2:24 ` Leo Famulari
2016-10-04 8:23 ` ng0
2016-10-04 8:34 ` psyc.scm: new patch series ng0
2016-10-04 8:34 ` [PATCH 1/4] gnu: Add perl-net-psyc ng0
2016-10-04 8:34 ` [PATCH 2/4] gnu: Add libpsyc ng0
2016-10-04 8:34 ` [PATCH 3/4] gnu: Add psyclpc ng0
2016-10-04 8:34 ` [PATCH 4/4] gnu: Add psyced ng0
2016-10-26 11:37 ` Efraim Flashner
2016-10-28 10:04 ` ng0
2016-10-30 5:54 ` [PATCH 1/4] gnu: Add perl-net-psyc Ricardo Wurmus
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87fuoj0yun.fsf@we.make.ritual.n0.is \
--to=ngillmann@runbox.com \
--cc=guix-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).