From 4ae5bc33464f14fcaf9e73cd752874a8a0b83571 Mon Sep 17 00:00:00 2001 From: Bob Mottram Date: Fri, 10 Nov 2017 17:43:51 +0000 Subject: [PATCH] Pleroma logo --- doc/EN/app_pleroma.org | 8 +-- img/pleroma-logo.png | Bin 0 -> 10403 bytes src/freedombone-app-pleroma | 121 ++++++++++++++++++++++++++++++++++++ website/EN/app_pleroma.html | 24 ++++--- 4 files changed, 138 insertions(+), 15 deletions(-) create mode 100644 img/pleroma-logo.png diff --git a/doc/EN/app_pleroma.org b/doc/EN/app_pleroma.org index 5bdfcb04..e11809f4 100644 --- a/doc/EN/app_pleroma.org +++ b/doc/EN/app_pleroma.org @@ -10,11 +10,9 @@ [[file:images/logo.png]] #+END_CENTER -#+BEGIN_EXPORT html -
-

Pleroma

-
-#+END_EXPORT +#+BEGIN_CENTER +[[file:images/pleroma-logo.png]] +#+END_CENTER Pleroma is an OStatus-compatible social networking server, compatible with GNU Social, PostActiv and Mastodon. It is high-performance and so is especially well suited for running on low power single board computers without much RAM. diff --git a/img/pleroma-logo.png b/img/pleroma-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..964ec025f417cf18ebc7457e8dff73bec5dc7c5f GIT binary patch literal 10403 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 F{|7HVNuK}! literal 0 HcmV?d00001 diff --git a/src/freedombone-app-pleroma b/src/freedombone-app-pleroma index 31db299f..2a86ce5b 100755 --- a/src/freedombone-app-pleroma +++ b/src/freedombone-app-pleroma @@ -62,6 +62,127 @@ pleroma_variables=(ONION_ONLY MY_EMAIL_ADDRESS MY_USERNAME) +function pleroma_block_domain_script { + database_name='pleroma' + pleroma_domain=$PLEROMA_DOMAIN_NAME + + echo '#!/bin/bash' > /usr/bin/pleroma-delete-domain + echo '' >> /usr/bin/pleroma-delete-domain + echo 'database_name=$1' >> /usr/bin/pleroma-delete-domain + echo 'remove_domain=$2' >> /usr/bin/pleroma-delete-domain + echo 'domain_name=$3' >> /usr/bin/pleroma-delete-domain + echo "POSTGRESQL_PASSWORD=\$(${PROJECT_NAME}-pass -u root -a pleroma)" >> /usr/bin/pleroma-delete-domain + echo '' >> /usr/bin/pleroma-delete-domain + echo 'if [ ${#remove_domain} -lt 2 ]; then' >> /usr/bin/pleroma-delete-domain + echo ' echo $"No domain was specified"' >> /usr/bin/pleroma-delete-domain + echo ' exit 1' >> /usr/bin/pleroma-delete-domain + echo 'fi' >> /usr/bin/pleroma-delete-domain + echo '' >> /usr/bin/pleroma-delete-domain + echo 'if [[ "$remove_domain" != *"."* ]]; then' >> /usr/bin/pleroma-delete-domain + echo ' echo $"This doesnt look like a domain"' >> /usr/bin/pleroma-delete-domain + echo ' exit 2' >> /usr/bin/pleroma-delete-domain + echo 'fi' >> /usr/bin/pleroma-delete-domain + echo '' >> /usr/bin/pleroma-delete-domain + echo 'if [ ${#database_name} -lt 2 ]; then' >> /usr/bin/pleroma-delete-domain + echo ' echo $"No database was specified"' >> /usr/bin/pleroma-delete-domain + echo ' exit 3' >> /usr/bin/pleroma-delete-domain + echo 'fi' >> /usr/bin/pleroma-delete-domain + echo '' >> /usr/bin/pleroma-delete-domain + echo "database_query=\"select user_id from profile where profileurl like '%\${remove_domain}%';\"" >> /usr/bin/pleroma-delete-domain + echo 'declare -a ids=$(mysql -u root --password="$POSTGRESQL_PASSWORD" << EOF' >> /usr/bin/pleroma-delete-domain + echo 'use $database_name;' >> /usr/bin/pleroma-delete-domain + echo '$database_query' >> /usr/bin/pleroma-delete-domain + echo 'EOF' >> /usr/bin/pleroma-delete-domain + echo ')' >> /usr/bin/pleroma-delete-domain + echo '' >> /usr/bin/pleroma-delete-domain + echo 'ctr=0' >> /usr/bin/pleroma-delete-domain + echo 'for id in $ids' >> /usr/bin/pleroma-delete-domain + echo 'do' >> /usr/bin/pleroma-delete-domain + echo ' if [ $ctr -gt 0 ]; then' >> /usr/bin/pleroma-delete-domain + echo ' #echo "Removing user ID $id on $remove_domain"' >> /usr/bin/pleroma-delete-domain + echo '' >> /usr/bin/pleroma-delete-domain + echo " database_query=\"delete from conversation where uri like '%\${remove_domain}%';\"" >> /usr/bin/pleroma-delete-domain + echo ' mysql -u root --password="$POSTGRESQL_PASSWORD" -e "$database_query" $database_name' >> /usr/bin/pleroma-delete-domain + echo '' >> /usr/bin/pleroma-delete-domain + echo ' database_query="delete from reply where profile_id=${id};"' >> /usr/bin/pleroma-delete-domain + echo ' mysql -u root --password="$POSTGRESQL_PASSWORD" -e "$database_query" $database_name' >> /usr/bin/pleroma-delete-domain + echo '' >> /usr/bin/pleroma-delete-domain + echo ' database_query="delete from reply where replied_id=${id};"' >> /usr/bin/pleroma-delete-domain + echo ' mysql -u root --password="$POSTGRESQL_PASSWORD" -e "$database_query" $database_name' >> /usr/bin/pleroma-delete-domain + echo '' >> /usr/bin/pleroma-delete-domain + echo ' if [ $domain_name ]; then' >> /usr/bin/pleroma-delete-domain + echo ' database_query="select rendered from notice where profile_id=${id} and rendered like '"'"'%/file/%'"'"';"' >> /usr/bin/pleroma-delete-domain + echo ' declare -a stored_files=$(mysql -u root --password="$POSTGRESQL_PASSWORD" << EOF' >> /usr/bin/pleroma-delete-domain + echo 'use $database_name;' >> /usr/bin/pleroma-delete-domain + echo '$database_query' >> /usr/bin/pleroma-delete-domain + echo 'EOF' >> /usr/bin/pleroma-delete-domain + echo ')' >> /usr/bin/pleroma-delete-domain + echo -n " files_to_delete=\$(echo \"\$stored_files\" | " >> /usr/bin/pleroma-delete-domain + echo 'sed -n '"'"'s/.*href="\([^"]*\).*/\1/p'"'"' | awk -F '"'"'file/'"'"' '"'"'{print $2}'"'"')' >> /usr/bin/pleroma-delete-domain + echo ' filectr=0' >> /usr/bin/pleroma-delete-domain + echo ' for f in $files_to_delete' >> /usr/bin/pleroma-delete-domain + echo ' do' >> /usr/bin/pleroma-delete-domain + echo ' if [ $filectr -gt 0 ]; then' >> /usr/bin/pleroma-delete-domain + echo ' if $(ls /var/www/${domain_name}/htdocs/file/*${f}* 1> /dev/null 2>&1); then' >> /usr/bin/pleroma-delete-domain + echo ' rm /var/www/${domain_name}/htdocs/file/*${f}*' >> /usr/bin/pleroma-delete-domain + echo ' fi' >> /usr/bin/pleroma-delete-domain + echo ' fi' >> /usr/bin/pleroma-delete-domain + echo ' filectr=$((filectr + 1))' >> /usr/bin/pleroma-delete-domain + echo ' done' >> /usr/bin/pleroma-delete-domain + echo ' fi' >> /usr/bin/pleroma-delete-domain + echo '' >> /usr/bin/pleroma-delete-domain + echo ' database_query="delete from notice where profile_id=${id};"' >> /usr/bin/pleroma-delete-domain + echo ' mysql -u root --password="$POSTGRESQL_PASSWORD" -e "$database_query" $database_name' >> /usr/bin/pleroma-delete-domain + echo '' >> /usr/bin/pleroma-delete-domain + echo ' database_query="delete from profile where id=${id};"' >> /usr/bin/pleroma-delete-domain + echo ' mysql -u root --password="$POSTGRESQL_PASSWORD" -e "$database_query" $database_name' >> /usr/bin/pleroma-delete-domain + echo '' >> /usr/bin/pleroma-delete-domain + echo ' database_query="delete from qvitternotification where to_profile_id=${id} or from_profile_id=${id};"' >> /usr/bin/pleroma-delete-domain + echo ' mysql -u root --password="$POSTGRESQL_PASSWORD" -e "$database_query" $database_name' >> /usr/bin/pleroma-delete-domain + echo ' fi' >> /usr/bin/pleroma-delete-domain + echo ' ctr=$((ctr + 1))' >> /usr/bin/pleroma-delete-domain + echo 'done' >> /usr/bin/pleroma-delete-domain + chmod +x /usr/bin/pleroma-delete-domain + + echo '#!/bin/bash' > /usr/bin/${database_name}-firewall + echo '' >> /usr/bin/${database_name}-firewall + echo "PROJECT_NAME=$PROJECT_NAME" >> /usr/bin/${database_name}-firewall + + if [[ $ONION_ONLY == 'no' ]]; then + echo "PLEROMA_DOMAIN_NAME=$PLEROMA_DOMAIN_NAME" >> /usr/bin/${database_name}-firewall + else + echo "PLEROMA_DOMAIN_NAME=$PLEROMA_ONION_HOSTNAME" >> /usr/bin/${database_name}-firewall + fi + + echo "database_name=$database_name" >> /usr/bin/${database_name}-firewall + echo 'FIREWALL_DOMAINS=$HOME/${PROJECT_NAME}-firewall-domains.cfg' >> /usr/bin/${database_name}-firewall + echo '' >> /usr/bin/${database_name}-firewall + echo 'while read block; do' >> /usr/bin/${database_name}-firewall + echo ' if [[ "$block" != *"@"* ]]; then' >> /usr/bin/${database_name}-firewall + echo ' /usr/bin/pleroma-delete-domain "$database_name" "$block" "$PLEROMA_DOMAIN_NAME"' >> /usr/bin/${database_name}-firewall + echo ' else' >> /usr/bin/${database_name}-firewall + echo ' /usr/bin/pleroma-delete-user "$database_name" "$block" "$PLEROMA_DOMAIN_NAME"' >> /usr/bin/${database_name}-firewall + echo ' fi' >> /usr/bin/${database_name}-firewall + echo 'done <$FIREWALL_DOMAINS' >> /usr/bin/${database_name}-firewall + echo '' >> /usr/bin/${database_name}-firewall + echo '# remove any metadata from images uploaded in the last 2 minutes' >> /usr/bin/${database_name}-firewall + echo 'if [ -d /var/www/$PLEROMA_DOMAIN_NAME/htdocs ]; then' >> /usr/bin/${database_name}-firewall + echo ' cd /var/www/$PLEROMA_DOMAIN_NAME/htdocs' >> /usr/bin/${database_name}-firewall + echo ' declare -a recent_image=$(find file ! -name thumb-* -mmin -2 -type f -exec ls -l {} + | awk -F '"'"'file/'"'"' '"'"'{print $2}'"'"')' >> /usr/bin/${database_name}-firewall + echo ' for f in ${recent_image[@]}' >> /usr/bin/${database_name}-firewall + echo ' do' >> /usr/bin/${database_name}-firewall + echo ' if [ ${#f} -gt 1 ]; then' >> /usr/bin/${database_name}-firewall + echo ' exiftool -q -all= "file/${f}"' >> /usr/bin/${database_name}-firewall + echo ' fi' >> /usr/bin/${database_name}-firewall + echo ' done' >> /usr/bin/${database_name}-firewall + echo 'fi' >> /usr/bin/${database_name}-firewall + chmod +x /usr/bin/${database_name}-firewall + + if ! grep -q "${database_name}-firewall" /etc/crontab; then + echo "*/1 * * * * root /usr/bin/${database_name}-firewall" >> /etc/crontab + fi +} + function pleroma_recompile { # necessary after parameter changes sudo -u pleroma mix clean diff --git a/website/EN/app_pleroma.html b/website/EN/app_pleroma.html index dc4f59fb..4e4011a7 100644 --- a/website/EN/app_pleroma.html +++ b/website/EN/app_pleroma.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + @@ -244,9 +244,13 @@ for the JavaScript code in this tag. -
-

Pleroma

-
+
+ +
+

pleroma-logo.png +

+
+

Pleroma is an OStatus-compatible social networking server, compatible with GNU Social, PostActiv and Mastodon. It is high-performance and so is especially well suited for running on low power single board computers without much RAM. @@ -260,9 +264,9 @@ Pleroma is an OStatus-compatible social networking server, compatible with GNU S -

-

Installation

-
+
+

Installation

+

Log into your system with:

@@ -282,9 +286,9 @@ Select Add/Remove Apps then pleroma. You will then be asked for a
-
-

Initial setup

-
+
+

Initial setup

+

The first thing you'll need to do is register a new account. You can set your profile details and profile image by selecting the small settings icon to the right of your name.