Date: Wed, 8 Feb 2017 20:39:14 +0000 (UTC) From: Matthew Seaman <matthew@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r433672 - in head/security: . morphis morphis/files Message-ID: <201702082039.v18KdEC7052483@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: matthew Date: Wed Feb 8 20:39:14 2017 New Revision: 433672 URL: https://svnweb.freebsd.org/changeset/ports/433672 Log: MORPHiS is a global encrypted distributed datastore intended to replace the cloud for storage and far more. This first release also includes DMAIL (distributed mail), inherently spam resistant, inherently encrypted, uncensorable, free distributed messaging. WWW: https://morph.is PR: 215804 Submitted by: Yuri Victorovich <yuri@rawbw.com> Added: head/security/morphis/ head/security/morphis/Makefile (contents, props changed) head/security/morphis/distinfo (contents, props changed) head/security/morphis/files/ head/security/morphis/files/morphis-cmd.in (contents, props changed) head/security/morphis/files/morphis-service.in (contents, props changed) head/security/morphis/files/pkg-message.in (contents, props changed) head/security/morphis/pkg-descr (contents, props changed) head/security/morphis/pkg-plist (contents, props changed) Modified: head/security/Makefile Modified: head/security/Makefile ============================================================================== --- head/security/Makefile Wed Feb 8 20:16:31 2017 (r433671) +++ head/security/Makefile Wed Feb 8 20:39:14 2017 (r433672) @@ -380,6 +380,7 @@ SUBDIR += mhash SUBDIR += mindterm-binary SUBDIR += monkeysphere + SUBDIR += morphis SUBDIR += munge SUBDIR += mussh SUBDIR += nacl Added: head/security/morphis/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/security/morphis/Makefile Wed Feb 8 20:39:14 2017 (r433672) @@ -0,0 +1,52 @@ +# Created by: Yuri Victorovich <yuri@rawbw.com> +# $FreeBSD$ + +PORTNAME= morphis +PORTVERSION= 0.8.18.6 +DISTVERSIONPREFIX= v +CATEGORIES= security net-p2p + +MAINTAINER= yuri@rawbw.com +COMMENT= Peer-to-peer high-performance distributed datastore and mail + +LICENSE= GPLv2 +LICENSE_FILE= ${WRKSRC}/LICENSE + +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pycrypto>0:security/py-pycrypto \ + ${PYTHON_PKGNAMEPREFIX}sqlalchemy11>0:databases/py-sqlalchemy11 + +USE_GITHUB= yes +GH_ACCOUNT= yurivict + +SUB_FILES= morphis-service morphis-cmd pkg-message +SUB_LIST= LOCALBASE=${LOCALBASE} USER=${USER} GROUP=${GROUP} +PLIST_SUB= USER=${USER} GROUP=${GROUP} + +USES= python:3.4+ +NO_ARCH= yes + +.include <bsd.port.pre.mk> + +.if defined(PACKAGE_BUILDING) && ${PYTHON_VER} != ${PYTHON_DEFAULT} +IGNORE= you have python ${PYTHON_DEFAULT} set as the default, and this needs ${PYTHON_VER} +.endif + +USER= nobody +GROUP= nobody + +do-build: + @(cd ${WRKSRC} && \ + ${PYTHON_CMD} ${PYTHON_LIBDIR}/compileall.py \ + -d ${WRKSRC} -f ${WRKSRC} && \ + ${PYTHON_CMD} -O ${PYTHON_LIBDIR}/compileall.py \ + -d ${WRKSRC} -f ${WRKSRC}) +do-install: + @${MKDIR} ${STAGEDIR}${DATADIR} + @${CP} -R ${WRKSRC}/* ${STAGEDIR}${DATADIR}/ + @cd ${STAGEDIR}${DATADIR} && ${RM} Makefile LICENSE README RUNNING TODO-* + @${MKDIR} ${STAGEDIR}/var/db/morphis + @${LN} -s /var/db/morphis ${STAGEDIR}${DATADIR}/data + ${INSTALL_SCRIPT} ${WRKDIR}/morphis-cmd ${STAGEDIR}${PREFIX}/bin/morphis + ${INSTALL_SCRIPT} ${WRKDIR}/morphis-service ${STAGEDIR}${PREFIX}/etc/rc.d/morphis + +.include <bsd.port.post.mk> Added: head/security/morphis/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/security/morphis/distinfo Wed Feb 8 20:39:14 2017 (r433672) @@ -0,0 +1,3 @@ +TIMESTAMP = 1483641216 +SHA256 (yurivict-morphis-v0.8.18.6_GH0.tar.gz) = 88fcf9d48a98e57e4ea5661ae2ad05c70998479918e8abade9c71eef281cf96e +SIZE (yurivict-morphis-v0.8.18.6_GH0.tar.gz) = 184296 Added: head/security/morphis/files/morphis-cmd.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/security/morphis/files/morphis-cmd.in Wed Feb 8 20:39:14 2017 (r433672) @@ -0,0 +1,3 @@ +#!/bin/sh + +cd %%LOCALBASE%%/share/morphis && su -m %%USER%% -c "./run.sh $@" Added: head/security/morphis/files/morphis-service.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/security/morphis/files/morphis-service.in Wed Feb 8 20:39:14 2017 (r433672) @@ -0,0 +1,87 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# Copyright (C) 2016 by Yuri Victorovich. All rights reserved. + +# PROVIDE: morphis +# REQUIRE: NETWORKING SERVERS tor +# KEYWORD: shutdown + +# morphis is disabled by default, if you have configuration file +# +# Add the following line to /etc/rc.conf to enable morphis: +# +#morphis_enable="YES" + +. /etc/rc.subr + + +name="morphis" +rcvar=morphis_enable +start_cmd="morphis_start" +stop_cmd="morphis_stop" +status_cmd="morphis_status" + +load_rc_config ${name} + +: ${morphis_enable="NO"} +: ${morphis_args=""} + +is_process_running() { + local pidfile=$1 + [ -f $pidfile ] && procstat `cat $pidfile` >/dev/null 2>&1 +} + +stop_daemon() { + # assume PID is also PGID (daemon(8) PID is always PGID) + [ -f "$1" ] && kill -- -$(cat $1) +} + +morphis_start() { + local logfile=/var/log/morphis.log + local pidfile=/var/run/morphis.pid + # already running? + if is_process_running $pidfile; then + echo "morphis is already running (pid=$(cat $pidfile))" + return 1 + fi + # log file + touch $logfile + chmod 640 $logfile + # user depends on the port option, so better force it on directories to avoid user confusion + chown -R %%USER%%:%%GROUP%% /var/db/morphis + # run + cd %%LOCALBASE%%/share/morphis + /usr/sbin/daemon -P $pidfile -u %%USER%% %%LOCALBASE%%/share/morphis/run.sh ${morphis_args} >>$logfile 2>&1 + # make sure it runs + if is_process_running $pidfile; then + echo "started morphis (pid=$(cat $pidfile))" + else + echo "failed to start morphis" + fi +} + +morphis_stop() { + local pidfile=/var/run/morphis.pid + if is_process_running $pidfile; then + echo "stopping morphis (pid=$(cat $pidfile))" + stop_daemon $pidfile + else + echo "morphis isn't running" + fi +} + +morphis_status() { + local pidfile=/var/run/morphis.pid + if is_process_running $pidfile; then + echo "morphis is running, pid=$(cat $pidfile)" + else + echo "morphis isn't running" + fi +} + +command="/usr/bin/true" + +run_rc_command "$1" Added: head/security/morphis/files/pkg-message.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/security/morphis/files/pkg-message.in Wed Feb 8 20:39:14 2017 (r433672) @@ -0,0 +1,13 @@ +====================================================================== +You installed MORPHiS: Secure decentralized data store and mail. + +It is recommended to run MORPHiS as a service: +# sysrc morphis_enable="YES" +# service morphis start + +To access MORPHiS please navigate to: +http://localhost:4251 + +You can also run MORPHiS manually (not recommended) with the command: +# su -m %%USER%% -c morphis +====================================================================== Added: head/security/morphis/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/security/morphis/pkg-descr Wed Feb 8 20:39:14 2017 (r433672) @@ -0,0 +1,6 @@ +MORPHiS is a global encrypted distributed datastore intended to replace the +cloud for storage and far more. This first release also includes DMAIL +(distributed mail), inherently spam resistant, inherently encrypted, +uncensorable, free distributed messaging. + +WWW: https://morph.is Added: head/security/morphis/pkg-plist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/security/morphis/pkg-plist Wed Feb 8 20:39:14 2017 (r433672) @@ -0,0 +1,223 @@ +bin/morphis +etc/rc.d/morphis +%%DATADIR%%/data +%%DATADIR%%/CONTRIBUTORS +%%DATADIR%%/CREDITS +%%DATADIR%%/VERSION +%%DATADIR%%/__pycache__/asymkey.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/asymkey.cpython-35.pyc +%%DATADIR%%/__pycache__/base58.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/base58.cpython-35.pyc +%%DATADIR%%/__pycache__/bittrie.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/bittrie.cpython-35.pyc +%%DATADIR%%/__pycache__/brute.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/brute.cpython-35.pyc +%%DATADIR%%/__pycache__/chord.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/chord.cpython-35.pyc +%%DATADIR%%/__pycache__/chord_packet.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/chord_packet.cpython-35.pyc +%%DATADIR%%/__pycache__/chord_tasks.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/chord_tasks.cpython-35.pyc +%%DATADIR%%/__pycache__/chordexception.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/chordexception.cpython-35.pyc +%%DATADIR%%/__pycache__/client.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/client.cpython-35.pyc +%%DATADIR%%/__pycache__/client_engine.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/client_engine.cpython-35.pyc +%%DATADIR%%/__pycache__/consts.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/consts.cpython-35.pyc +%%DATADIR%%/__pycache__/db.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/db.cpython-35.pyc +%%DATADIR%%/__pycache__/dhgroup14.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/dhgroup14.cpython-35.pyc +%%DATADIR%%/__pycache__/dmail.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/dmail.cpython-35.pyc +%%DATADIR%%/__pycache__/dsskey.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/dsskey.cpython-35.pyc +%%DATADIR%%/__pycache__/enc.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/enc.cpython-35.pyc +%%DATADIR%%/__pycache__/hashbench.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/hashbench.cpython-35.pyc +%%DATADIR%%/__pycache__/kex.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/kex.cpython-35.pyc +%%DATADIR%%/__pycache__/kexdhgroup14sha1.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/kexdhgroup14sha1.cpython-35.pyc +%%DATADIR%%/__pycache__/llog.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/llog.cpython-35.pyc +%%DATADIR%%/__pycache__/mbase32.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/mbase32.cpython-35.pyc +%%DATADIR%%/__pycache__/mcc.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/mcc.cpython-35.pyc +%%DATADIR%%/__pycache__/mn1.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/mn1.cpython-35.pyc +%%DATADIR%%/__pycache__/multipart.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/multipart.cpython-35.pyc +%%DATADIR%%/__pycache__/mutil.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/mutil.cpython-35.pyc +%%DATADIR%%/__pycache__/node.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/node.cpython-35.pyc +%%DATADIR%%/__pycache__/packet.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/packet.cpython-35.pyc +%%DATADIR%%/__pycache__/peer.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/peer.cpython-35.pyc +%%DATADIR%%/__pycache__/putil.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/putil.cpython-35.pyc +%%DATADIR%%/__pycache__/rsakey.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/rsakey.cpython-35.pyc +%%DATADIR%%/__pycache__/setup.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/setup.cpython-35.pyc +%%DATADIR%%/__pycache__/setup_all.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/setup_all.cpython-35.pyc +%%DATADIR%%/__pycache__/shell.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/shell.cpython-35.pyc +%%DATADIR%%/__pycache__/sshexception.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/sshexception.cpython-35.pyc +%%DATADIR%%/__pycache__/sshtype.cpython-35.opt-1.pyc +%%DATADIR%%/__pycache__/sshtype.cpython-35.pyc +%%DATADIR%%/asymkey.py +%%DATADIR%%/base58.py +%%DATADIR%%/bittrie.py +%%DATADIR%%/brute.py +%%DATADIR%%/build.sh +%%DATADIR%%/chord.py +%%DATADIR%%/chord_packet.py +%%DATADIR%%/chord_tasks.py +%%DATADIR%%/chordexception.py +%%DATADIR%%/client.py +%%DATADIR%%/client_engine.py +%%DATADIR%%/consts.py +%%DATADIR%%/contrib/morphisd/COPYING +%%DATADIR%%/contrib/morphisd/README.md +%%DATADIR%%/contrib/morphisd/etc/default/morphisd +%%DATADIR%%/contrib/morphisd/opt/morphis/morphisd +%%DATADIR%%/contrib/morphisd/opt/morphis/setargv +%%DATADIR%%/contrib/morphisd/usr/lib/systemd/system/morphisd.service +%%DATADIR%%/db.py +%%DATADIR%%/dev_cluster.sh +%%DATADIR%%/dev_node.sh +%%DATADIR%%/dhgroup14.py +%%DATADIR%%/dmail.py +%%DATADIR%%/dsskey.py +%%DATADIR%%/enc.py +%%DATADIR%%/exceptions/20150716-01.txt +%%DATADIR%%/favicon.ico +%%DATADIR%%/hashbench.py +%%DATADIR%%/kex.py +%%DATADIR%%/kexdhgroup14sha1.py +%%DATADIR%%/llog.py +%%DATADIR%%/logging-debug.ini +%%DATADIR%%/logging-info.ini +%%DATADIR%%/logging-ms.ini +%%DATADIR%%/logging-prod.ini +%%DATADIR%%/logging-warn.ini +%%DATADIR%%/logging.ini +%%DATADIR%%/lots-bulk.sh +%%DATADIR%%/lots.sh +%%DATADIR%%/maalstroom/__init__.py +%%DATADIR%%/maalstroom/__pycache__/__init__.cpython-35.opt-1.pyc +%%DATADIR%%/maalstroom/__pycache__/__init__.cpython-35.pyc +%%DATADIR%%/maalstroom/__pycache__/dispatcher.cpython-35.opt-1.pyc +%%DATADIR%%/maalstroom/__pycache__/dispatcher.cpython-35.pyc +%%DATADIR%%/maalstroom/__pycache__/dmail.cpython-35.opt-1.pyc +%%DATADIR%%/maalstroom/__pycache__/dmail.cpython-35.pyc +%%DATADIR%%/maalstroom/__pycache__/templates.cpython-35.opt-1.pyc +%%DATADIR%%/maalstroom/__pycache__/templates.cpython-35.pyc +%%DATADIR%%/maalstroom/dispatcher.py +%%DATADIR%%/maalstroom/dmail.py +%%DATADIR%%/maalstroom/resources/images/dmail/add_address.png +%%DATADIR%%/maalstroom/resources/images/dmail/addressbook.png +%%DATADIR%%/maalstroom/resources/images/dmail/addressbook_blue.png +%%DATADIR%%/maalstroom/resources/images/dmail/addressbook_grey.png +%%DATADIR%%/maalstroom/resources/images/dmail/bullet.png +%%DATADIR%%/maalstroom/resources/images/dmail/bullet_white.png +%%DATADIR%%/maalstroom/resources/images/dmail/compose_blue.png +%%DATADIR%%/maalstroom/resources/images/dmail/compose_white.png +%%DATADIR%%/maalstroom/resources/images/dmail/divider.gif +%%DATADIR%%/maalstroom/resources/images/dmail/draft.png +%%DATADIR%%/maalstroom/resources/images/dmail/draft_white.png +%%DATADIR%%/maalstroom/resources/images/dmail/gradient.jpg +%%DATADIR%%/maalstroom/resources/images/dmail/inbox.png +%%DATADIR%%/maalstroom/resources/images/dmail/inbox_new.png +%%DATADIR%%/maalstroom/resources/images/dmail/inbox_white.png +%%DATADIR%%/maalstroom/resources/images/dmail/list_addresses.png +%%DATADIR%%/maalstroom/resources/images/dmail/logo.png +%%DATADIR%%/maalstroom/resources/images/dmail/mail_icon.png +%%DATADIR%%/maalstroom/resources/images/dmail/mail_icon2.png +%%DATADIR%%/maalstroom/resources/images/dmail/read.png +%%DATADIR%%/maalstroom/resources/images/dmail/refresh.png +%%DATADIR%%/maalstroom/resources/images/dmail/reply_blue.png +%%DATADIR%%/maalstroom/resources/images/dmail/reply_dk.png +%%DATADIR%%/maalstroom/resources/images/dmail/reply_icon.png +%%DATADIR%%/maalstroom/resources/images/dmail/reply_icon_new.png +%%DATADIR%%/maalstroom/resources/images/dmail/reply_purp.png +%%DATADIR%%/maalstroom/resources/images/dmail/reply_white.png +%%DATADIR%%/maalstroom/resources/images/dmail/save.png +%%DATADIR%%/maalstroom/resources/images/dmail/save_blue.png +%%DATADIR%%/maalstroom/resources/images/dmail/save_dk.png +%%DATADIR%%/maalstroom/resources/images/dmail/save_purp.png +%%DATADIR%%/maalstroom/resources/images/dmail/save_white.png +%%DATADIR%%/maalstroom/resources/images/dmail/send.png +%%DATADIR%%/maalstroom/resources/images/dmail/send_blue.png +%%DATADIR%%/maalstroom/resources/images/dmail/send_dk.png +%%DATADIR%%/maalstroom/resources/images/dmail/send_purp.png +%%DATADIR%%/maalstroom/resources/images/dmail/send_white.png +%%DATADIR%%/maalstroom/resources/images/dmail/sent.png +%%DATADIR%%/maalstroom/resources/images/dmail/sent_white.png +%%DATADIR%%/maalstroom/resources/images/dmail/settings.png +%%DATADIR%%/maalstroom/resources/images/dmail/stripe.png +%%DATADIR%%/maalstroom/resources/images/dmail/tags.png +%%DATADIR%%/maalstroom/resources/images/dmail/tags_white.png +%%DATADIR%%/maalstroom/resources/images/dmail/trash.png +%%DATADIR%%/maalstroom/resources/images/dmail/trash_blue.png +%%DATADIR%%/maalstroom/resources/images/dmail/trash_dk.png +%%DATADIR%%/maalstroom/resources/images/dmail/trash_icon.png +%%DATADIR%%/maalstroom/resources/images/dmail/trash_icon_new.png +%%DATADIR%%/maalstroom/resources/images/dmail/trash_white.png +%%DATADIR%%/maalstroom/resources/images/dmail/trash_white_in.png +%%DATADIR%%/maalstroom/resources/images/dmail/unread.png +%%DATADIR%%/maalstroom/resources/style.css +%%DATADIR%%/maalstroom/templates.py +%%DATADIR%%/maalstroom/templates/dmail/address_config.html +%%DATADIR%%/maalstroom/templates/dmail/address_list.html +%%DATADIR%%/maalstroom/templates/dmail/address_list_row.html +%%DATADIR%%/maalstroom/templates/dmail/aside.html +%%DATADIR%%/maalstroom/templates/dmail/compose.html +%%DATADIR%%/maalstroom/templates/dmail/create_address.html +%%DATADIR%%/maalstroom/templates/dmail/logo.html +%%DATADIR%%/maalstroom/templates/dmail/msg_list.html +%%DATADIR%%/maalstroom/templates/dmail/msg_list_list_end.html +%%DATADIR%%/maalstroom/templates/dmail/msg_list_list_row.html +%%DATADIR%%/maalstroom/templates/dmail/msg_list_list_start.html +%%DATADIR%%/maalstroom/templates/dmail/nav.html +%%DATADIR%%/maalstroom/templates/dmail/new_mail.html +%%DATADIR%%/maalstroom/templates/dmail/page_wrapper.html +%%DATADIR%%/maalstroom/templates/dmail/read.html +%%DATADIR%%/maalstroom/templates/main/combined_upload.html +%%DATADIR%%/mbase32.py +%%DATADIR%%/mcc.py +%%DATADIR%%/mn1.py +%%DATADIR%%/multipart.py +%%DATADIR%%/mutil.py +%%DATADIR%%/node.py +%%DATADIR%%/old/__pycache__/n1.cpython-35.opt-1.pyc +%%DATADIR%%/old/__pycache__/n1.cpython-35.pyc +%%DATADIR%%/old/__pycache__/node.cpython-35.opt-1.pyc +%%DATADIR%%/old/__pycache__/node.cpython-35.pyc +%%DATADIR%%/old/__pycache__/server_test.cpython-35.opt-1.pyc +%%DATADIR%%/old/__pycache__/server_test.cpython-35.pyc +%%DATADIR%%/old/n1.py +%%DATADIR%%/old/node.py +%%DATADIR%%/old/server_test.py +%%DATADIR%%/packet.py +%%DATADIR%%/peer.py +%%DATADIR%%/putil.py +%%DATADIR%%/rsakey.py +%%DATADIR%%/run.sh +%%DATADIR%%/setup.py +%%DATADIR%%/setup_all.py +%%DATADIR%%/shell.py +%%DATADIR%%/sshexception.py +%%DATADIR%%/sshtype.py +%%DATADIR%%/test_100n.sh +%%DATADIR%%/upload_page.html +@dir(%%USER%%,%%GROUP%%,0700) /var/db/morphis
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201702082039.v18KdEC7052483>