Просмотр исходного кода

Updating pleroma filtering scripts

Bob Mottram 6 лет назад
Родитель
Сommit
5c656e0c16
1 измененных файлов: 21 добавлений и 0 удалений
  1. 21
    0
      src/freedombone-app-pleroma

+ 21
- 0
src/freedombone-app-pleroma Просмотреть файл

@@ -108,6 +108,7 @@ function create_pleroma_blocklist {
108 108
       echo 'users_query="DELETE FROM users WHERE"';
109 109
       echo 'websub_server_subscriptions_query="DELETE FROM websub_server_subscriptions WHERE"';
110 110
       echo 'websub_server_subscriptions_updated=';
111
+      echo 'filter_str=';
111 112
       echo 'while read blocked; do';
112 113
       echo "    if [[ \"\$blocked\" == *\".\"* || \"\$blocked\" == *\"@\"* ]]; then";
113 114
       echo "        if [ \${#blocked} -gt 4 ]; then";
@@ -119,6 +120,13 @@ function create_pleroma_blocklist {
119 120
       echo "            users_query=\"\${users_query} nickname ilike '%\${blocked}%'\"";
120 121
       echo '            objects_updated=1';
121 122
       echo "            if [[ \"\$blocked\" != *\"@\"* ]]; then";
123
+      echo '                # Create a filter string for the pleroma configuration';
124
+      echo "                if [ \"\$filter_str\" ]; then";
125
+      echo "                    filter_str=\"\${filter_str}, \\\"\$blocked\\\"\"";
126
+      echo '                else';
127
+      echo "                    filter_str=\"\${blocked}\"";
128
+      echo '                fi';
129
+      echo '';
122 130
       echo "                if ! grep -q \"127.0.0.1  \$blocked\" /etc/hosts; then";
123 131
       echo "                    echo \"127.0.0.1  \$blocked\" >> /etc/hosts";
124 132
       echo '                fi';
@@ -132,6 +140,19 @@ function create_pleroma_blocklist {
132 140
       echo '    fi';
133 141
       echo 'done </root/freedombone-firewall-domains.cfg';
134 142
       echo '';
143
+      echo "if [ \"\$filter_str\" ]; then";
144
+      echo "    if ! grep -q \" \$filter_str \" $pleroma_secret; then";
145
+      echo "        sed -i \"s|media_removal:.*|media_removal: [ \$filter_str ],|g\" $pleroma_secret";
146
+      echo "        sed -i \"s|federated_timeline_removal:.*|federated_timeline_removal: [ \$filter_str ],|g\" $pleroma_secret";
147
+      echo "        sed -i \"s|removal:.*|removal: [ \$filter_str ]|g\" $pleroma_secret";
148
+      echo "        chown -R pleroma:pleroma $PLEROMA_DIR";
149
+      echo '        sudo -u pleroma mix clean';
150
+      echo '        sudo -u pleroma mix deps.compile';
151
+      echo '        sudo -u pleroma mix compile';
152
+      echo '        systemctl restart pleroma';
153
+      echo '    fi';
154
+      echo 'fi';
155
+      echo '';
135 156
       echo 'cd /etc/postgresql';
136 157
       echo "if [ \$objects_updated ]; then";
137 158
       echo "    sudo -u postgres psql -d pleroma -c \"\$objects_query\"";