[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 4/4] gnu: Add psyced.
From: |
Efraim Flashner |
Subject: |
Re: [PATCH 4/4] gnu: Add psyced. |
Date: |
Wed, 26 Oct 2016 14:37:12 +0300 |
User-agent: |
Mutt/1.7.1 (2016-10-04) |
On Tue, Oct 04, 2016 at 08:34:29AM +0000, ng0 wrote:
> * 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 2a2ddc1..e929866 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)
> +
I don't see any files being installed into %out/var/*, is psyced
supposed to be able to write to these directories at runtime?
> + (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
>
>
--
Efraim Flashner <address@hidden> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
signature.asc
Description: PGP signature
- Re: [PATCH 1/4] gnu: Add perl-net-psyc., Leo Famulari, 2016/10/01
- Re: [PATCH 1/4] gnu: Add perl-net-psyc., ng0, 2016/10/02
- Re: [PATCH 1/4] gnu: Add perl-net-psyc., Leo Famulari, 2016/10/03
- Re: [PATCH 1/4] gnu: Add perl-net-psyc., ng0, 2016/10/04
- psyc.scm: new patch series., ng0, 2016/10/04
- [PATCH 2/4] gnu: Add libpsyc., ng0, 2016/10/04
- [PATCH 1/4] gnu: Add perl-net-psyc., ng0, 2016/10/04
- [PATCH 3/4] gnu: Add psyclpc., ng0, 2016/10/04
- [PATCH 4/4] gnu: Add psyced., ng0, 2016/10/04
- Re: [PATCH 4/4] gnu: Add psyced.,
Efraim Flashner <=
- Re: [PATCH 4/4] gnu: Add psyced., ng0, 2016/10/28