Date: Fri, 26 May 2017 21:22:38 +0000 (UTC) From: Joseph Mingrone <jrm@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r441815 - in head: . net-im/mastodon net-im/mastodon/files Message-ID: <201705262122.v4QLMcSv024890@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jrm Date: Fri May 26 21:22:38 2017 New Revision: 441815 URL: https://svnweb.freebsd.org/changeset/ports/441815 Log: New port, net-im/mastodon: GNU Social-compatible microblogging server WWW: https://github.com/tootsuite/mastodon Submitted by: feld, jrm, mmokhi Reviewed by: bapt, feld, roberto, saper@saper.info, mat, swills Approved by: swills (mentor, implicit) Differential Revision: https://reviews.freebsd.org/D10298 Added: head/net-im/mastodon/ head/net-im/mastodon/Makefile (contents, props changed) head/net-im/mastodon/distinfo (contents, props changed) head/net-im/mastodon/files/ head/net-im/mastodon/files/900.mastodon.in (contents, props changed) head/net-im/mastodon/files/mastodon_stream.in (contents, props changed) head/net-im/mastodon/files/mastodon_web.in (contents, props changed) head/net-im/mastodon/files/mastodon_workers.in (contents, props changed) head/net-im/mastodon/files/nginx-include.conf.in (contents, props changed) head/net-im/mastodon/files/nginx.conf.in (contents, props changed) head/net-im/mastodon/files/patch-.env.production.sample (contents, props changed) head/net-im/mastodon/files/patch-Gemfile (contents, props changed) head/net-im/mastodon/files/patch-bin_yarn (contents, props changed) head/net-im/mastodon/files/patch-config_boot.rb (contents, props changed) head/net-im/mastodon/files/patch-config_environments_production.rb (contents, props changed) head/net-im/mastodon/files/patch-config_puma.rb (contents, props changed) head/net-im/mastodon/files/patch-config_sidekiq.yml (contents, props changed) head/net-im/mastodon/pkg-descr (contents, props changed) head/net-im/mastodon/pkg-message (contents, props changed) head/net-im/mastodon/pkg-plist (contents, props changed) Modified: head/GIDs head/UIDs Modified: head/GIDs ============================================================================== --- head/GIDs Fri May 26 20:02:44 2017 (r441814) +++ head/GIDs Fri May 26 21:22:38 2017 (r441815) @@ -185,7 +185,7 @@ aprsd:*:240: tnc:*:241: prosody:*:242: # free: 243 -# free: 244 +mastodon:*:244: # free: 245 # free: 246 fcron:*:247: Modified: head/UIDs ============================================================================== --- head/UIDs Fri May 26 20:02:44 2017 (r441814) +++ head/UIDs Fri May 26 21:22:38 2017 (r441815) @@ -190,7 +190,7 @@ aprsd:*:240:240::0:0:aprsd:/nonexistent: tnc:*:241:241::0:0:aprsd:/nonexistent:/bin/sh prosody:*:242:242::0:0:Prosody Jabber Server:/nonexistent:/usr/sbin/nologin # free: 243 -# free: 244 +mastodon:*:244:244::0:0:Mastodon User:/usr/local/www/mastodon:/bin/sh # free: 245 # free: 246 fcron:*:247:247::0:0:fcron pseudo-user:/nonexistent:/usr/sbin/nologin Added: head/net-im/mastodon/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/Makefile Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,112 @@ +# $FreeBSD$ + +PORTNAME= mastodon +DISTVERSIONPREFIX= v +DISTVERSION= 1.4rc4 +CATEGORIES= net-im www + +MAINTAINER= jrm@FreeBSD.org +COMMENT= GNU Social-compatible microblogging server + +LICENSE= AGPLv3 +LICENSE_FILE= ${WRKSRC}/LICENSE + +RUN_DEPENDS= ffmpeg>0:multimedia/ffmpeg \ + libpqtypes>1.5.0:databases/libpqtypes + +# Dependencies below match Gemfile layout +RUN_DEPENDS+= rubygem-pkg-config>=1.2.0:devel/rubygem-pkg-config + +RUN_DEPENDS+= rubygem-puma>0:www/rubygem-puma \ + rubygem-rails50>0:www/rubygem-rails50 \ + rubygem-uglifier>0:www/rubygem-uglifier + +RUN_DEPENDS+= rubygem-hamlit-rails-rails50>0:www/rubygem-hamlit-rails-rails50 \ + rubygem-pg>0:databases/rubygem-pg \ + rubygem-pghero-rails50>0:databases/rubygem-pghero-rails50 \ + rubygem-dotenv-rails-rails50>0:misc/rubygem-dotenv-rails-rails50 \ + +RUN_DEPENDS+= rubygem-aws-sdk>0:devel/rubygem-aws-sdk \ + rubygem-paperclip-rails50>0:devel/rubygem-paperclip-rails50 \ + rubygem-paperclip-av-transcoder-rails50>0:multimedia/rubygem-paperclip-av-transcoder-rails50 + +RUN_DEPENDS+= rubygem-addressable>0:www/rubygem-addressable \ + rubygem-cld3>0:textproc/rubygem-cld3 \ + rubygem-devise-rails50>0:devel/rubygem-devise-rails50 \ + rubygem-devise-two-factor-rails50>0:security/rubygem-devise-two-factor-rails50 \ + rubygem-doorkeeper-rails50>0:security/rubygem-doorkeeper-rails50 \ + rubygem-fast_blank>0:devel/rubygem-fast_blank \ + rubygem-goldfinger>0:www/rubygem-goldfinger \ + rubygem-hiredis>0:databases/rubygem-hiredis \ + rubygem-redis-namespace>0:databases/rubygem-redis-namespace \ + rubygem-htmlentities>0:textproc/rubygem-htmlentities \ + rubygem-http>0:www/rubygem-http \ + rubygem-http_accept_language>0:devel/rubygem-http_accept_language \ + rubygem-httplog>0:sysutils/rubygem-httplog \ + rubygem-kaminari-rails50>0:www/rubygem-kaminari-rails50 \ + rubygem-link_header>0:www/rubygem-link_header \ + rubygem-nokogiri>0:textproc/rubygem-nokogiri \ + rubygem-oj>0:devel/rubygem-oj \ + rubygem-ostatus2>0:www/rubygem-ostatus2 \ + rubygem-ox>0:textproc/rubygem-ox \ + rubygem-rabl-rails50>0:devel/rubygem-rabl-rails50 \ + rubygem-rack-attack>0:www/rubygem-rack-attack \ + rubygem-rack-cors>0:www/rubygem-rack-cors \ + rubygem-rack-timeout>0:www/rubygem-rack-timeout \ + rubygem-rails-i18n-rails50>0:devel/rubygem-rails-i18n-rails50 \ + rubygem-rails-settings-cached-rails50>0:www/rubygem-rails-settings-cached-rails50 \ + rubygem-redis>0:databases/rubygem-redis \ + rubygem-rqrcode>0:www/rubygem-rqrcode \ + rubygem-ruby-oembed>0:www/rubygem-ruby-oembed \ + textproc/rubygem-sanitize>0:textproc/rubygem-sanitize \ + rubygem-sidekiq>0:devel/rubygem-sidekiq \ + rubygem-sidekiq-scheduler>0:devel/rubygem-sidekiq-scheduler \ + rubygem-sidekiq-unique-jobs>0:devel/rubygem-sidekiq-unique-jobs \ + rubygem-simple-navigation-rails50>0:devel/rubygem-simple-navigation-rails50 \ + rubygem-simple_form-rails50>0:devel/rubygem-simple_form-rails50 \ + rubygem-sprockets-rails-rails50>0:devel/rubygem-sprockets-rails-rails50 \ + rubygem-statsd-instrument>0:devel/rubygem-statsd-instrument \ + rubygem-twitter-text>0:textproc/rubygem-twitter-text \ + rubygem-tzinfo-data>0:devel/rubygem-tzinfo-data \ + rubygem-webpacker-rails50>0:devel/rubygem-webpacker-rails50 + +RUN_DEPENDS+= rubygem-lograge-rails50>0:www/rubygem-lograge-rails50 \ + rubygem-redis-rails-rails50>0:www/rubygem-redis-rails-rails50 + +USES= gnome pgsql shebangfix +USE_GITHUB= yes +GH_ACCOUNT= tootsuite +USE_GNOME= libxml2 libxslt +USE_RC_SUBR= mastodon_stream mastodon_web mastodon_workers +USE_RUBY= yes + +SHEBANG_FILES= bin/* + +USERS= ${PORTNAME} +GROUPS= ${PORTNAME} + +NO_ARCH= yes +NO_BUILD= yes + +SUB_LIST+= RAKE="${LOCALBASE}/bin/rake" RUBY="${RUBY_NAME}" +SUB_FILES= 900.mastodon nginx.conf nginx-include.conf + +post-patch: + @${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|' \ + ${WRKSRC}/bin/yarn \ + ${WRKSRC}/config/environments/production.rb + +do-install: + ${RM} ${WRKSRC}/Gemfile.lock \ + ${WRKSRC}/lib/tasks/auto_annotate_models.rake + ${MKDIR} ${STAGEDIR}${LOCALBASE}/etc/periodic/daily \ + ${STAGEDIR}${WWWDIR} ${STAGEDIR}/var/log/mastodon + ${INSTALL_SCRIPT} ${WRKDIR}/900.mastodon \ + ${STAGEDIR}${LOCALBASE}/etc/periodic/daily + ${INSTALL_DATA} ${WRKDIR}/nginx.conf \ + ${STAGEDIR}${WWWDIR}/nginx.conf.sample + ${INSTALL_DATA} ${WRKDIR}/nginx-include.conf \ + ${STAGEDIR}${WWWDIR}/nginx-include.conf.sample + (cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGEDIR}${WWWDIR}) + +.include <bsd.port.mk> Added: head/net-im/mastodon/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/distinfo Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,3 @@ +TIMESTAMP = 1495804238 +SHA256 (tootsuite-mastodon-v1.4rc4_GH0.tar.gz) = da61920f8604b1ccc9042bee0adea2e002ab334c7d90181f41606c1db8da930f +SIZE (tootsuite-mastodon-v1.4rc4_GH0.tar.gz) = 9999246 Added: head/net-im/mastodon/files/900.mastodon.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/files/900.mastodon.in Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,38 @@ +#!/bin/sh +# +# $FreeBSD$ +# +# daily_mastodon="YES" +# +# These are daily tasks to ensure that Mastodon runs smoothly. +# +# Feed clear: Removes timelines of users who haven't signed in lately, which +# saves RAM and improves message distribution. This is required to be run +# periodically so that when they login again the regeneration process will +# trigger. +# +# Media clear: Remove media attachments that have not been assigned to any status +# for longer than a day. +# +# Users clear: Clear timelines of inactive users. +# +# Push refresh: Resubscribes PuSH for expiring remote users. This should be run +# quite often as the expiration time depends on the particular hub of the remote +# user. +# + +if [ -r /etc/defaults/periodic.conf ]; then + . /etc/defaults/periodic.conf + source_periodic_confs +fi + +rc=0 + +case "$daily_mastodon_enable" in + [Yy][Ee][Ss]) + cd %%WWWDIR%% && %%RAKE%% mastodon:daily RAILS_ENV=production LOG_LEVEL=warn + rc=$?;; + *) rc=0;; +esac + +exit $rc Added: head/net-im/mastodon/files/mastodon_stream.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/files/mastodon_stream.in Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,34 @@ +#! /bin/sh + +# PROVIDE: mastodon_stream +# REQUIRE: LOGIN postgresql nginx redis +# KEYWORD: shutdown + +# +# Add the following line to /etc/rc.conf to enable the Mastodon streaming +# service. +# +# mastodon_stream_enable="YES" + +. /etc/rc.subr + +name=mastodon_stream +rcvar="${name}_enable" + +load_rc_config "$name" + +: ${mastodon_stream_enable:="NO"} +: ${mastodon_stream_port="4000"} + +mastodon_stream_chdir="%%WWWDIR%%" +mastodon_stream_env="HOME=%%WWWDIR%% \ +NODE_ENV=production \ +PORT=\"${mastodon_stream_port}\" \ +USER=mastodon" +mastodon_stream_user="mastodon" + +command="%%PREFIX%%/bin/node" +command_args="%%WWWDIR%%/node_modules/.bin/babel-node ./streaming/index.js \ +>> /var/log/mastodon/${name}.log 2>&1 &" + +run_rc_command "$1" Added: head/net-im/mastodon/files/mastodon_web.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/files/mastodon_web.in Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,40 @@ +#! /bin/sh + +# PROVIDE: mastodon_web +# REQUIRE: LOGIN postgresql nginx redis +# KEYWORD: shutdown + +# +# Add the following line to /etc/rc.conf to enable the Mastodon web server. +# +# mastodon_web_enable="YES" + +. /etc/rc.subr + +name=mastodon_web +rcvar="${name}_enable" + +load_rc_config "$name" + +: ${mastodon_web_enable:="NO"} + +: ${mastodon_web_concurrency:="2"} +: ${mastodon_web_loglevel:="error"} +: ${mastodon_web_port:="3000"} +: ${mastodon_web_threads:="5"} + +mastodon_web_chdir="%%WWWDIR%%" +mastodon_web_env="MAX_THREADS=\"${mastodon_web_threads}\" \ +PORT=\"${mastodon_web_port}\" \ +RAILS_ENV=production \ +RAILS_LOG_LEVEL=\"${mastodon_web_loglevel}\" \ +WEB_CONCURRENCY=\"${mastodon_web_concurrency}\"" +mastodon_web_user="mastodon" +pidfile="%%WWWDIR%%/tmp/${name}.pid" +procname="%%RUBY%%:" + +command="%%PREFIX%%/bin/puma" +command_flags="-C config/puma.rb" +command_args=">> /var/log/mastodon/${name}.log 2>&1 &" + +run_rc_command "$1" Added: head/net-im/mastodon/files/mastodon_workers.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/files/mastodon_workers.in Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,37 @@ +#! /bin/sh + +# PROVIDE: mastodon_workers +# REQUIRE: LOGIN postgresql nginx redis +# KEYWORD: shutdown + +# +# Add the following line to /etc/rc.conf to enable the Mastodon background +# workers. +# +# mastodon_workers_enable="YES" + +. /etc/rc.subr + +name=mastodon_workers +rcvar="${name}_enable" + +load_rc_config "$name" + +: ${mastodon_workers_enable:="NO"} +: ${mastodon_workers_loglevel:="error"} +: ${mastodon_workers_dbpool:="5"} +: ${mastodon_workers_threads:="5"} + +mastodon_workers_chdir="%%WWWDIR%%" +mastodon_workers_env="DB_POOL=\"${mastodon_workers_dbpool}\" \ +RAILS_ENV=production \ +RAILS_LOG_LEVEL=\"${mastodon_workers_loglevel}\"" +mastodon_workers_user="mastodon" +pidfile="%%WWWDIR%%/tmp/${name}.pid" +procname="%%RUBY%%:" + +command="%%PREFIX%%/bin/sidekiq" +command_flags="-c ${mastodon_workers_threads} -q default -q mailers -q pull -q push" +command_args=">> /var/log/mastodon/${name}.log 2>&1 &" + +run_rc_command "$1" Added: head/net-im/mastodon/files/nginx-include.conf.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/files/nginx-include.conf.in Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,82 @@ +map $http_upgrade $connection_upgrade { + default upgrade; + '' close; +} + +server { + listen 80; + listen 443 ssl http2; + # listen [::]:443 ssl http2; + server_name example.com; + + ssl_protocols TLSv1.2; + ssl_ciphers HIGH:!MEDIUM:!LOW:!aNULL:!NULL:!SHA; + ssl_prefer_server_ciphers on; + ssl_session_cache shared:SSL:10m; + ssl_certificate %%PREFIX%%/etc/dehydrated/certs/example.com/fullchain.pem; + ssl_certificate_key %%PREFIX%%/etc/dehydrated/certs/example.com/privkey.pem; + ssl_dhparam %%PREFIX%%/etc/dehydrated/certs/dhparam.pem; + keepalive_timeout 70; + sendfile on; + client_max_body_size 0; + + root %%WWWDIR%%/public; + + gzip on; + gzip_disable "msie6"; + gzip_vary on; + gzip_proxied any; + gzip_comp_level 6; + gzip_buffers 16 8k; + gzip_http_version 1.1; + gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; + + add_header Strict-Transport-Security "max-age=31536000"; + add_header Content-Security-Policy "style-src 'self' 'unsafe-inline'; script-src 'self'; object-src 'self'; img-src data: https:; media-src data: https:; connect-src 'self' wss://example.com; upgrade-insecure-requests"; + + location / { + try_files $uri @proxy; + } + + location ~ ^/(packs|system/media_attachments/files|system/accounts/avatars) { + add_header Cache-Control "public, max-age=31536000, immutable"; + try_files $uri @proxy; + } + + location @proxy { + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto https; + proxy_set_header Proxy ""; + proxy_pass_header Server; + + proxy_pass http://127.0.0.1:3000; + proxy_buffering off; + proxy_redirect off; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection $connection_upgrade; + + tcp_nodelay on; + } + + location /api/v1/streaming { + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto https; + proxy_set_header Proxy ""; + + proxy_pass http://localhost:4000; + proxy_buffering off; + proxy_redirect off; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection $connection_upgrade; + + tcp_nodelay on; + } + + error_page 500 501 502 503 504 /500.html; +} Added: head/net-im/mastodon/files/nginx.conf.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/files/nginx.conf.in Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,25 @@ +worker_processes 2; +error_log /var/log/httpd-error.log; +user www www; + +events +{ + worker_connections 1024; +} + +http +{ + log_format main '$remote_addr - $remote_user [$time_local] "$request" ' + '$status $body_bytes_sent "$http_referer" ' + '"$http_user_agent" "$http_x_forwarded_for"'; + access_log /var/log/httpd-access.log; + default_type application/octet-stream; + include %%PREFIX%%/etc/nginx/mime.types; + index index.html + keepalive_timeout 65; + gzip on; + sendfile on; + + include %%WWWDIR%%/nginx-include.conf; + +} Added: head/net-im/mastodon/files/patch-.env.production.sample ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/files/patch-.env.production.sample Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,42 @@ +--- .env.production.sample.orig 2017-05-26 12:16:04 UTC ++++ .env.production.sample +@@ -1,11 +1,11 @@ + # Service dependencies + # You may set REDIS_URL instead for more advanced options +-REDIS_HOST=redis ++REDIS_HOST=localhost + REDIS_PORT=6379 + # You may set DATABASE_URL instead for more advanced options +-DB_HOST=db +-DB_USER=postgres +-DB_NAME=postgres ++DB_HOST=localhost ++DB_USER=mastodon ++DB_NAME=mastodon_production + DB_PASS= + DB_PORT=5432 + +@@ -47,16 +47,16 @@ OTP_SECRET= + # If you want to use an SMTP server without authentication (e.g local Postfix relay) + # then set SMTP_AUTH_METHOD and SMTP_OPENSSL_VERIFY_MODE to 'none' and + # *comment* SMTP_LOGIN and SMTP_PASSWORD (leaving them blank is not enough). +-SMTP_SERVER=smtp.mailgun.org +-SMTP_PORT=587 +-SMTP_LOGIN= +-SMTP_PASSWORD= +-SMTP_FROM_ADDRESS=notifications@example.com ++#SMTP_SERVER=smtp.mailgun.org ++#SMTP_PORT=587 ++#SMTP_LOGIN= ++#SMTP_PASSWORD= ++SMTP_FROM_ADDRESS=mastodon@example.com + #SMTP_DOMAIN= # defaults to LOCAL_DOMAIN + #SMTP_DELIVERY_METHOD=smtp # delivery method can also be sendmail +-#SMTP_AUTH_METHOD=plain ++SMTP_AUTH_METHOD=none + #SMTP_CA_FILE=/etc/ssl/certs/ca-certificates.crt +-#SMTP_OPENSSL_VERIFY_MODE=peer ++SMTP_OPENSSL_VERIFY_MODE=none + #SMTP_ENABLE_STARTTLS_AUTO=true + + Added: head/net-im/mastodon/files/patch-Gemfile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/files/patch-Gemfile Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,55 @@ +--- Gemfile.orig 2017-05-20 21:11:45 UTC ++++ Gemfile +@@ -19,7 +19,6 @@ gem 'paperclip', '~> 5.1' + gem 'paperclip-av-transcoder', '~> 0.6' + + gem 'addressable', '~> 2.5' +-gem 'bootsnap' + gem 'cld3', '~> 3.1' + gem 'devise', '~> 4.2' + gem 'devise-two-factor', '~> 3.0' +@@ -59,44 +58,6 @@ gem 'twitter-text', '~> 1.14' + gem 'tzinfo-data', '~> 1.2017' + gem 'webpacker', '~> 1.2' + +-group :development, :test do +- gem 'fabrication', '~> 2.16' +- gem 'fuubar', '~> 2.2' +- gem 'i18n-tasks', '~> 0.9', require: false +- gem 'pry-rails', '~> 0.3' +- gem 'rspec-rails', '~> 3.6' +-end +- +-group :test do +- gem 'capybara', '~> 2.14' +- gem 'faker', '~> 1.7' +- gem 'microformats2', '~> 3.0' +- gem 'rails-controller-testing', '~> 1.0' +- gem 'rspec-sidekiq', '~> 3.0' +- gem 'simplecov', '~> 0.14', require: false +- gem 'webmock', '~> 3.0' +- gem 'parallel_tests', '~> 2.14' +-end +- +-group :development do +- gem 'active_record_query_trace', '~> 1.5' +- gem 'annotate', '~> 2.7' +- gem 'better_errors', '~> 2.1' +- gem 'binding_of_caller', '~> 0.7' +- gem 'bullet', '~> 5.5' +- gem 'letter_opener', '~> 1.4' +- gem 'letter_opener_web', '~> 1.3' +- gem 'rubocop', '~> 0.48', require: false +- gem 'brakeman', '~> 3.6', require: false +- gem 'bundler-audit', '~> 0.5', require: false +- gem 'scss_lint', '~> 0.53', require: false +- +- gem 'capistrano', '~> 3.8' +- gem 'capistrano-rails', '~> 1.2' +- gem 'capistrano-rbenv', '~> 2.1' +- gem 'capistrano-yarn', '~> 2.0' +-end +- + group :production do + gem 'lograge', '~> 0.5' + gem 'redis-rails', '~> 5.0' Added: head/net-im/mastodon/files/patch-bin_yarn ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/files/patch-bin_yarn Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,11 @@ +--- bin/yarn.orig 2017-05-25 22:16:48 UTC ++++ bin/yarn +@@ -2,7 +2,7 @@ + VENDOR_PATH = File.expand_path('..', __dir__) + Dir.chdir(VENDOR_PATH) do + begin +- exec "yarnpkg #{ARGV.join(" ")}" ++ exec "%%PREFIX%%/bin/yarn #{ARGV.join(" ")}" + rescue Errno::ENOENT + $stderr.puts "Yarn executable was not detected in the system." + $stderr.puts "Download Yarn at https://yarnpkg.com/en/docs/install" Added: head/net-im/mastodon/files/patch-config_boot.rb ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/files/patch-config_boot.rb Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,27 @@ +--- config/boot.rb.orig 2017-05-20 22:05:08 UTC ++++ config/boot.rb +@@ -1,14 +1,14 @@ + ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__) + + require 'bundler/setup' # Set up gems listed in the Gemfile. +-require 'bootsnap' ++#require 'bootsnap' + +-Bootsnap.setup( +- cache_dir: 'tmp/cache', +- development_mode: ENV['RAILS_ENV'] == 'development', +- load_path_cache: true, +- autoload_paths_cache: true, +- disable_trace: true, +- compile_cache_iseq: false, +- compile_cache_yaml: false +-) ++# Bootsnap.setup( ++# cache_dir: 'tmp/cache', ++# development_mode: ENV['RAILS_ENV'] == 'development', ++# load_path_cache: true, ++# autoload_paths_cache: true, ++# disable_trace: true, ++# compile_cache_iseq: false, ++# compile_cache_yaml: false ++# ) Added: head/net-im/mastodon/files/patch-config_environments_production.rb ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/files/patch-config_environments_production.rb Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,12 @@ +--- config/environments/production.rb.orig 2017-05-24 01:40:57 UTC ++++ config/environments/production.rb +@@ -104,4 +104,9 @@ Rails.application.configure do + 'X-Content-Type-Options' => 'nosniff', + 'X-XSS-Protection' => '1; mode=block', + } ++ ++ # Paperclip config: ++ Paperclip.options[:image_magick_path] = "%%PREFIX%%/bin" ++ Paperclip.options[:command_path] = "%%PREFIX%%/bin" ++ + end Added: head/net-im/mastodon/files/patch-config_puma.rb ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/files/patch-config_puma.rb Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,11 @@ +--- config/puma.rb.orig 2017-05-22 21:15:56 UTC ++++ config/puma.rb +@@ -1,6 +1,8 @@ + threads_count = ENV.fetch('MAX_THREADS') { 5 }.to_i + threads threads_count, threads_count + ++pidfile 'tmp/mastodon_web.pid' ++ + if ENV['SOCKET'] then + bind 'unix://' + ENV['SOCKET'] + else Added: head/net-im/mastodon/files/patch-config_sidekiq.yml ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/files/patch-config_sidekiq.yml Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,7 @@ +--- config/sidekiq.yml.orig 2017-05-22 21:30:15 UTC ++++ config/sidekiq.yml +@@ -15,3 +15,4 @@ + feed_cleanup_scheduler: + cron: '0 0 * * *' + class: Scheduler::FeedCleanupScheduler ++:pidfile: tmp/mastodon_workers.pid Added: head/net-im/mastodon/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/pkg-descr Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,8 @@ +Mastodon is an alternative implementation of GNU social, a free, +open-source social network. It is a decentralized alternative to +commercial platforms based on ActivityStreams, Webfinger, PubsubHubbub +and Salmon. The project focuses on creating a clean REST API and a good +user interface. Ruby on Rails is used for the back-end, while React.js +and Redux are used for the dynamic front-end. + +WWW: https://github.com/tootsuite/mastodon Added: head/net-im/mastodon/pkg-message ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/pkg-message Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,6 @@ +######################################################## + +Visit the URL below to get started with Mastodon. +http://ftfl.ca/blog/2017-05-23-mastodon-freebsd.html + +######################################################## Added: head/net-im/mastodon/pkg-plist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/net-im/mastodon/pkg-plist Fri May 26 21:22:38 2017 (r441815) @@ -0,0 +1,5315 @@ +@owner mastodon +@group mastodon +etc/periodic/daily/900.mastodon +@dir /var/log/mastodon +@dir %%WWWDIR%% +@dir %%WWWDIR%%/app +@dir %%WWWDIR%%/app/assets +@dir %%WWWDIR%%/app/assets/stylesheets +@dir %%WWWDIR%%/app/controllers +@dir %%WWWDIR%%/app/controllers/admin +@dir %%WWWDIR%%/app/controllers/api +@dir %%WWWDIR%%/app/controllers/api/activitypub +@dir %%WWWDIR%%/app/controllers/api/v1 +@dir %%WWWDIR%%/app/controllers/api/web +@dir %%WWWDIR%%/app/controllers/auth +@dir %%WWWDIR%%/app/controllers/concerns +@dir %%WWWDIR%%/app/controllers/oauth +@dir %%WWWDIR%%/app/controllers/settings +@dir %%WWWDIR%%/app/controllers/settings/exports +@dir %%WWWDIR%%/app/controllers/settings/two_factor_authentication +@dir %%WWWDIR%%/app/controllers/well_known +@dir %%WWWDIR%%/app/helpers +@dir %%WWWDIR%%/app/helpers/admin +@dir %%WWWDIR%%/app/javascript +@dir %%WWWDIR%%/app/javascript/fonts +@dir %%WWWDIR%%/app/javascript/fonts/montserrat +@dir %%WWWDIR%%/app/javascript/fonts/roboto +@dir %%WWWDIR%%/app/javascript/fonts/roboto-mono +@dir %%WWWDIR%%/app/javascript/images +@dir %%WWWDIR%%/app/javascript/mastodon +@dir %%WWWDIR%%/app/javascript/mastodon/actions +@dir %%WWWDIR%%/app/javascript/mastodon/components +@dir %%WWWDIR%%/app/javascript/mastodon/containers +@dir %%WWWDIR%%/app/javascript/mastodon/features +@dir %%WWWDIR%%/app/javascript/mastodon/features/account +@dir %%WWWDIR%%/app/javascript/mastodon/features/account/components +@dir %%WWWDIR%%/app/javascript/mastodon/features/account_gallery +@dir %%WWWDIR%%/app/javascript/mastodon/features/account_gallery/components +@dir %%WWWDIR%%/app/javascript/mastodon/features/account_timeline +@dir %%WWWDIR%%/app/javascript/mastodon/features/account_timeline/components +@dir %%WWWDIR%%/app/javascript/mastodon/features/account_timeline/containers +@dir %%WWWDIR%%/app/javascript/mastodon/features/blocks +@dir %%WWWDIR%%/app/javascript/mastodon/features/community_timeline +@dir %%WWWDIR%%/app/javascript/mastodon/features/compose +@dir %%WWWDIR%%/app/javascript/mastodon/features/compose/components +@dir %%WWWDIR%%/app/javascript/mastodon/features/compose/containers +@dir %%WWWDIR%%/app/javascript/mastodon/features/favourited_statuses +@dir %%WWWDIR%%/app/javascript/mastodon/features/favourites +@dir %%WWWDIR%%/app/javascript/mastodon/features/follow_requests +@dir %%WWWDIR%%/app/javascript/mastodon/features/follow_requests/components +@dir %%WWWDIR%%/app/javascript/mastodon/features/follow_requests/containers +@dir %%WWWDIR%%/app/javascript/mastodon/features/followers +@dir %%WWWDIR%%/app/javascript/mastodon/features/following +@dir %%WWWDIR%%/app/javascript/mastodon/features/generic_not_found +@dir %%WWWDIR%%/app/javascript/mastodon/features/getting_started +@dir %%WWWDIR%%/app/javascript/mastodon/features/hashtag_timeline +@dir %%WWWDIR%%/app/javascript/mastodon/features/home_timeline +@dir %%WWWDIR%%/app/javascript/mastodon/features/home_timeline/components +@dir %%WWWDIR%%/app/javascript/mastodon/features/home_timeline/containers +@dir %%WWWDIR%%/app/javascript/mastodon/features/mutes +@dir %%WWWDIR%%/app/javascript/mastodon/features/notifications +@dir %%WWWDIR%%/app/javascript/mastodon/features/notifications/components +@dir %%WWWDIR%%/app/javascript/mastodon/features/notifications/containers +@dir %%WWWDIR%%/app/javascript/mastodon/features/public_timeline +@dir %%WWWDIR%%/app/javascript/mastodon/features/reblogs +@dir %%WWWDIR%%/app/javascript/mastodon/features/report +@dir %%WWWDIR%%/app/javascript/mastodon/features/report/components +@dir %%WWWDIR%%/app/javascript/mastodon/features/report/containers +@dir %%WWWDIR%%/app/javascript/mastodon/features/status +@dir %%WWWDIR%%/app/javascript/mastodon/features/status/components +@dir %%WWWDIR%%/app/javascript/mastodon/features/status/containers +@dir %%WWWDIR%%/app/javascript/mastodon/features/ui +@dir %%WWWDIR%%/app/javascript/mastodon/features/ui/components +@dir %%WWWDIR%%/app/javascript/mastodon/features/ui/containers +@dir %%WWWDIR%%/app/javascript/mastodon/locales +@dir %%WWWDIR%%/app/javascript/mastodon/locales/locale-data +@dir %%WWWDIR%%/app/javascript/mastodon/middleware +@dir %%WWWDIR%%/app/javascript/mastodon/reducers +@dir %%WWWDIR%%/app/javascript/mastodon/selectors +@dir %%WWWDIR%%/app/javascript/mastodon/store +@dir %%WWWDIR%%/app/javascript/packs +@dir %%WWWDIR%%/app/javascript/styles +@dir %%WWWDIR%%/app/javascript/styles/fonts +@dir %%WWWDIR%%/app/lib +@dir %%WWWDIR%%/app/lib/settings +@dir %%WWWDIR%%/app/mailers +@dir %%WWWDIR%%/app/models +@dir %%WWWDIR%%/app/models/concerns +@dir %%WWWDIR%%/app/models/form +@dir %%WWWDIR%%/app/models/web +@dir %%WWWDIR%%/app/presenters +@dir %%WWWDIR%%/app/services +@dir %%WWWDIR%%/app/services/concerns +@dir %%WWWDIR%%/app/services/pubsubhubbub +@dir %%WWWDIR%%/app/validators +@dir %%WWWDIR%%/app/views +@dir %%WWWDIR%%/app/views/about +@dir %%WWWDIR%%/app/views/accounts +@dir %%WWWDIR%%/app/views/activitypub +@dir %%WWWDIR%%/app/views/activitypub/types +@dir %%WWWDIR%%/app/views/admin +@dir %%WWWDIR%%/app/views/admin/accounts +@dir %%WWWDIR%%/app/views/admin/domain_blocks +@dir %%WWWDIR%%/app/views/admin/instances +@dir %%WWWDIR%%/app/views/admin/pubsubhubbub +@dir %%WWWDIR%%/app/views/admin/reports +@dir %%WWWDIR%%/app/views/admin/settings +@dir %%WWWDIR%%/app/views/api +@dir %%WWWDIR%%/app/views/api/activitypub +@dir %%WWWDIR%%/app/views/api/activitypub/activities +@dir %%WWWDIR%%/app/views/api/activitypub/notes +@dir %%WWWDIR%%/app/views/api/activitypub/outbox +@dir %%WWWDIR%%/app/views/api/oembed +@dir %%WWWDIR%%/app/views/api/v1 +@dir %%WWWDIR%%/app/views/api/v1/accounts +@dir %%WWWDIR%%/app/views/api/v1/apps +@dir %%WWWDIR%%/app/views/api/v1/blocks +@dir %%WWWDIR%%/app/views/api/v1/favourites +@dir %%WWWDIR%%/app/views/api/v1/follow_requests +@dir %%WWWDIR%%/app/views/api/v1/follows +@dir %%WWWDIR%%/app/views/api/v1/instances +@dir %%WWWDIR%%/app/views/api/v1/media +@dir %%WWWDIR%%/app/views/api/v1/mutes +@dir %%WWWDIR%%/app/views/api/v1/notifications +@dir %%WWWDIR%%/app/views/api/v1/reports +@dir %%WWWDIR%%/app/views/api/v1/search +@dir %%WWWDIR%%/app/views/api/v1/statuses +@dir %%WWWDIR%%/app/views/api/v1/timelines +@dir %%WWWDIR%%/app/views/application +@dir %%WWWDIR%%/app/views/auth +@dir %%WWWDIR%%/app/views/auth/confirmations +@dir %%WWWDIR%%/app/views/auth/passwords +@dir %%WWWDIR%%/app/views/auth/registrations +@dir %%WWWDIR%%/app/views/auth/sessions +@dir %%WWWDIR%%/app/views/auth/shared +@dir %%WWWDIR%%/app/views/authorize_follows +@dir %%WWWDIR%%/app/views/errors +@dir %%WWWDIR%%/app/views/follower_accounts +@dir %%WWWDIR%%/app/views/following_accounts +@dir %%WWWDIR%%/app/views/home +@dir %%WWWDIR%%/app/views/kaminari +@dir %%WWWDIR%%/app/views/layouts +@dir %%WWWDIR%%/app/views/notification_mailer +@dir %%WWWDIR%%/app/views/oauth +@dir %%WWWDIR%%/app/views/oauth/authorizations +@dir %%WWWDIR%%/app/views/oauth/authorized_applications +@dir %%WWWDIR%%/app/views/remote_follow +@dir %%WWWDIR%%/app/views/settings +@dir %%WWWDIR%%/app/views/settings/exports +@dir %%WWWDIR%%/app/views/settings/follower_domains +@dir %%WWWDIR%%/app/views/settings/imports +@dir %%WWWDIR%%/app/views/settings/preferences +@dir %%WWWDIR%%/app/views/settings/profiles +@dir %%WWWDIR%%/app/views/settings/shared +@dir %%WWWDIR%%/app/views/settings/two_factor_authentication +@dir %%WWWDIR%%/app/views/settings/two_factor_authentication/confirmations +@dir %%WWWDIR%%/app/views/settings/two_factor_authentication/recovery_codes +@dir %%WWWDIR%%/app/views/settings/two_factor_authentications +@dir %%WWWDIR%%/app/views/shared +@dir %%WWWDIR%%/app/views/stream_entries +@dir %%WWWDIR%%/app/views/tags +@dir %%WWWDIR%%/app/views/user_mailer +@dir %%WWWDIR%%/app/views/well_known +@dir %%WWWDIR%%/app/views/well_known/host_meta +@dir %%WWWDIR%%/app/views/well_known/webfinger +@dir %%WWWDIR%%/app/workers +@dir %%WWWDIR%%/app/workers/admin +@dir %%WWWDIR%%/app/workers/pubsubhubbub +@dir %%WWWDIR%%/app/workers/scheduler +@dir %%WWWDIR%%/bin +@dir %%WWWDIR%%/config +@dir %%WWWDIR%%/config/environments +@dir %%WWWDIR%%/config/initializers +@dir %%WWWDIR%%/config/locales +@dir %%WWWDIR%%/config/webpack +@dir %%WWWDIR%%/config/webpack/loaders +@dir %%WWWDIR%%/db +@dir %%WWWDIR%%/db/migrate +@dir %%WWWDIR%%/docs +@dir %%WWWDIR%%/docs/Contributing-to-Mastodon +@dir %%WWWDIR%%/docs/Running-Mastodon +@dir %%WWWDIR%%/docs/Using-Mastodon +@dir %%WWWDIR%%/docs/Using-the-API +@dir %%WWWDIR%%/lib +@dir %%WWWDIR%%/lib/assets +@dir %%WWWDIR%%/lib/mastodon +@dir %%WWWDIR%%/lib/paperclip +@dir %%WWWDIR%%/lib/tasks +@dir %%WWWDIR%%/lib/templates +@dir %%WWWDIR%%/lib/templates/haml +@dir %%WWWDIR%%/lib/templates/haml/scaffold +@dir %%WWWDIR%%/log +@dir %%WWWDIR%%/nanobox +@dir %%WWWDIR%%/public +@dir %%WWWDIR%%/public/avatars +@dir %%WWWDIR%%/public/avatars/original +@dir %%WWWDIR%%/public/emoji +@dir %%WWWDIR%%/public/headers +@dir %%WWWDIR%%/public/headers/original +@dir %%WWWDIR%%/public/sounds +@dir %%WWWDIR%%/spec +@dir %%WWWDIR%%/spec/controllers +@dir %%WWWDIR%%/spec/controllers/admin +@dir %%WWWDIR%%/spec/controllers/api +@dir %%WWWDIR%%/spec/controllers/api/activitypub +@dir %%WWWDIR%%/spec/controllers/api/v1 +@dir %%WWWDIR%%/spec/controllers/auth +@dir %%WWWDIR%%/spec/controllers/concerns +@dir %%WWWDIR%%/spec/controllers/oauth +@dir %%WWWDIR%%/spec/controllers/settings +@dir %%WWWDIR%%/spec/controllers/settings/exports +@dir %%WWWDIR%%/spec/controllers/settings/two_factor_authentication +@dir %%WWWDIR%%/spec/controllers/well_known +@dir %%WWWDIR%%/spec/fabricators +@dir %%WWWDIR%%/spec/features +@dir %%WWWDIR%%/spec/fixtures +@dir %%WWWDIR%%/spec/fixtures/files +@dir %%WWWDIR%%/spec/fixtures/push +@dir %%WWWDIR%%/spec/fixtures/requests +@dir %%WWWDIR%%/spec/fixtures/salmon +@dir %%WWWDIR%%/spec/fixtures/xml +@dir %%WWWDIR%%/spec/helpers +@dir %%WWWDIR%%/spec/helpers/admin +@dir %%WWWDIR%%/spec/javascript +@dir %%WWWDIR%%/spec/javascript/components +@dir %%WWWDIR%%/spec/javascript/components/features +@dir %%WWWDIR%%/spec/javascript/components/features/ui +@dir %%WWWDIR%%/spec/javascript/components/features/ui/components +@dir %%WWWDIR%%/spec/lib +@dir %%WWWDIR%%/spec/mailers +@dir %%WWWDIR%%/spec/mailers/previews +@dir %%WWWDIR%%/spec/models +@dir %%WWWDIR%%/spec/models/web +@dir %%WWWDIR%%/spec/presenters +@dir %%WWWDIR%%/spec/requests +@dir %%WWWDIR%%/spec/routing +@dir %%WWWDIR%%/spec/services +@dir %%WWWDIR%%/spec/services/pubsubhubbub +@dir %%WWWDIR%%/spec/support +@dir %%WWWDIR%%/spec/support/matchers +@dir %%WWWDIR%%/spec/support/matchers/model +@dir %%WWWDIR%%/spec/views +@dir %%WWWDIR%%/spec/views/about +@dir %%WWWDIR%%/spec/views/stream_entries +@dir %%WWWDIR%%/spec/workers +@dir %%WWWDIR%%/spec/workers/pubsubhubbub +@dir %%WWWDIR%%/spec/workers/scheduler +@dir %%WWWDIR%%/storybook +@dir %%WWWDIR%%/storybook/stories +@dir %%WWWDIR%%/streaming +@dir %%WWWDIR%%/vendor +@dir %%WWWDIR%%/vendor/assets +@dir %%WWWDIR%%/vendor/assets/javascripts +@dir %%WWWDIR%%/vendor/assets/stylesheets +@sample %%WWWDIR%%/.env.production.sample +@sample %%WWWDIR%%/nginx.conf.sample +@sample %%WWWDIR%%/nginx-include.conf.sample +%%WWWDIR%%/.babelrc +%%WWWDIR%%/.buildpacks +%%WWWDIR%%/.codeclimate.yml +%%WWWDIR%%/.dockerignore +%%WWWDIR%%/.editorconfig +%%WWWDIR%%/.env.nanobox +%%WWWDIR%%/.env.test +%%WWWDIR%%/.env.vagrant +%%WWWDIR%%/.eslintignore +%%WWWDIR%%/.eslintrc.yml +%%WWWDIR%%/.foreman +%%WWWDIR%%/.haml-lint.yml +%%WWWDIR%%/.nanoignore +%%WWWDIR%%/.nvmrc +%%WWWDIR%%/.postcssrc.yml +%%WWWDIR%%/.profile +%%WWWDIR%%/.rspec +%%WWWDIR%%/.rubocop.yml +%%WWWDIR%%/.ruby-version +%%WWWDIR%%/.scss-lint.yml +%%WWWDIR%%/.slugignore +%%WWWDIR%%/.travis.yml +%%WWWDIR%%/Aptfile +%%WWWDIR%%/CONTRIBUTING.md +%%WWWDIR%%/Capfile +%%WWWDIR%%/Dockerfile +%%WWWDIR%%/Gemfile +%%WWWDIR%%/ISSUE_TEMPLATE.md +%%WWWDIR%%/LICENSE +%%WWWDIR%%/Procfile +%%WWWDIR%%/Procfile.dev +%%WWWDIR%%/README.md +%%WWWDIR%%/Rakefile +%%WWWDIR%%/Vagrantfile +%%WWWDIR%%/app.json +%%WWWDIR%%/app/assets/stylesheets/.gitkeep +%%WWWDIR%%/app/controllers/about_controller.rb +%%WWWDIR%%/app/controllers/account_follow_controller.rb +%%WWWDIR%%/app/controllers/account_unfollow_controller.rb +%%WWWDIR%%/app/controllers/accounts_controller.rb +%%WWWDIR%%/app/controllers/admin/accounts_controller.rb +%%WWWDIR%%/app/controllers/admin/base_controller.rb +%%WWWDIR%%/app/controllers/admin/confirmations_controller.rb +%%WWWDIR%%/app/controllers/admin/domain_blocks_controller.rb +%%WWWDIR%%/app/controllers/admin/instances_controller.rb +%%WWWDIR%%/app/controllers/admin/pubsubhubbub_controller.rb +%%WWWDIR%%/app/controllers/admin/reported_statuses_controller.rb +%%WWWDIR%%/app/controllers/admin/reports_controller.rb +%%WWWDIR%%/app/controllers/admin/resets_controller.rb +%%WWWDIR%%/app/controllers/admin/settings_controller.rb +%%WWWDIR%%/app/controllers/admin/silences_controller.rb +%%WWWDIR%%/app/controllers/admin/suspensions_controller.rb +%%WWWDIR%%/app/controllers/admin/two_factor_authentications_controller.rb +%%WWWDIR%%/app/controllers/api/activitypub/activities_controller.rb +%%WWWDIR%%/app/controllers/api/activitypub/notes_controller.rb +%%WWWDIR%%/app/controllers/api/activitypub/outbox_controller.rb +%%WWWDIR%%/app/controllers/api/oembed_controller.rb +%%WWWDIR%%/app/controllers/api/push_controller.rb +%%WWWDIR%%/app/controllers/api/salmon_controller.rb +%%WWWDIR%%/app/controllers/api/subscriptions_controller.rb +%%WWWDIR%%/app/controllers/api/v1/accounts_controller.rb +%%WWWDIR%%/app/controllers/api/v1/apps_controller.rb +%%WWWDIR%%/app/controllers/api/v1/blocks_controller.rb +%%WWWDIR%%/app/controllers/api/v1/domain_blocks_controller.rb +%%WWWDIR%%/app/controllers/api/v1/favourites_controller.rb +%%WWWDIR%%/app/controllers/api/v1/follow_requests_controller.rb +%%WWWDIR%%/app/controllers/api/v1/follows_controller.rb +%%WWWDIR%%/app/controllers/api/v1/instances_controller.rb +%%WWWDIR%%/app/controllers/api/v1/media_controller.rb +%%WWWDIR%%/app/controllers/api/v1/mutes_controller.rb +%%WWWDIR%%/app/controllers/api/v1/notifications_controller.rb +%%WWWDIR%%/app/controllers/api/v1/reports_controller.rb +%%WWWDIR%%/app/controllers/api/v1/search_controller.rb +%%WWWDIR%%/app/controllers/api/v1/statuses_controller.rb +%%WWWDIR%%/app/controllers/api/v1/timelines/base_controller.rb +%%WWWDIR%%/app/controllers/api/v1/timelines/home_controller.rb +%%WWWDIR%%/app/controllers/api/v1/timelines/public_controller.rb +%%WWWDIR%%/app/controllers/api/v1/timelines/tag_controller.rb +%%WWWDIR%%/app/controllers/api/web/settings_controller.rb +%%WWWDIR%%/app/controllers/api_controller.rb +%%WWWDIR%%/app/controllers/application_controller.rb +%%WWWDIR%%/app/controllers/auth/confirmations_controller.rb +%%WWWDIR%%/app/controllers/auth/passwords_controller.rb +%%WWWDIR%%/app/controllers/auth/registrations_controller.rb +%%WWWDIR%%/app/controllers/auth/sessions_controller.rb +%%WWWDIR%%/app/controllers/authorize_follows_controller.rb +%%WWWDIR%%/app/controllers/concerns/account_controller_concern.rb +%%WWWDIR%%/app/controllers/concerns/localized.rb +%%WWWDIR%%/app/controllers/concerns/obfuscate_filename.rb +%%WWWDIR%%/app/controllers/concerns/user_tracking_concern.rb +%%WWWDIR%%/app/controllers/follower_accounts_controller.rb +%%WWWDIR%%/app/controllers/following_accounts_controller.rb +%%WWWDIR%%/app/controllers/home_controller.rb +%%WWWDIR%%/app/controllers/media_controller.rb +%%WWWDIR%%/app/controllers/oauth/authorizations_controller.rb +%%WWWDIR%%/app/controllers/oauth/authorized_applications_controller.rb +%%WWWDIR%%/app/controllers/remote_follow_controller.rb +%%WWWDIR%%/app/controllers/settings/exports/base_controller.rb +%%WWWDIR%%/app/controllers/settings/exports/blocked_accounts_controller.rb +%%WWWDIR%%/app/controllers/settings/exports/following_accounts_controller.rb +%%WWWDIR%%/app/controllers/settings/exports/muted_accounts_controller.rb +%%WWWDIR%%/app/controllers/settings/exports_controller.rb +%%WWWDIR%%/app/controllers/settings/follower_domains_controller.rb +%%WWWDIR%%/app/controllers/settings/imports_controller.rb +%%WWWDIR%%/app/controllers/settings/preferences_controller.rb +%%WWWDIR%%/app/controllers/settings/profiles_controller.rb +%%WWWDIR%%/app/controllers/settings/two_factor_authentication/confirmations_controller.rb +%%WWWDIR%%/app/controllers/settings/two_factor_authentication/recovery_codes_controller.rb +%%WWWDIR%%/app/controllers/settings/two_factor_authentications_controller.rb +%%WWWDIR%%/app/controllers/statuses_controller.rb +%%WWWDIR%%/app/controllers/stream_entries_controller.rb +%%WWWDIR%%/app/controllers/tags_controller.rb +%%WWWDIR%%/app/controllers/well_known/host_meta_controller.rb +%%WWWDIR%%/app/controllers/well_known/webfinger_controller.rb +%%WWWDIR%%/app/helpers/activitystreams2_builder_helper.rb +%%WWWDIR%%/app/helpers/admin/filter_helper.rb +%%WWWDIR%%/app/helpers/application_helper.rb *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201705262122.v4QLMcSv024890>