Skip to main content

!The Linux Luser Group

New Friendiqa version in Frdoid repo

@Friendica Developers @Friendiqa
Hi there, I just uploaded version 0.5 of Friendiqa to my binary Fdroid repo at
Important changes:

* Redesign due to QML Components 1 being deprecated in Qt 5.12: Slideview for News, left Drawer for Settings, message creation in listview header
* Android Notifications for News, DMs, Replies
* Global app config separated from account config

If I don't get any bug reports I will upload the version to Google Playstore.
Cheers, Marco


Linux Lusers Forum

Did you know has a forum on here?

Just visit this account to join the forum: @The Linux Luser Group

When you want to post to the forum, or share something there, simply tag it just like you would a normal user, except replace the leading '@' with an '!' (only the leading one). That goes for any Friendica forum.

When you do this the post becomes a forum post* [b]and everyone in the forum can see & interact with it! It's a great way to get help to general questions you may have[b]**, start a riveting discussion, or just share an interesting post that your fellow forum users might appreciate!

I hope to see some of my fellow Lusers there! :P

* A couple of forum tips:
Reveal/hide... show more
This entry was edited (2 months ago)


Friendica update script (for git-based installations)

I've been using this script for ~3 months now. I added a few additional steps based on input from @Steffen K9 🐰 not too long ago. I'm sure it's still not perfect, but it seems to be working just fine for me, so I thought I might as well share it on here and possibly help others!

I find this much simpler than manually extracting archives, fixing permissions, overwritting configs and relinking my personal additions to the site with every update. I also include some tips in the file for dealing with branch changes and such (again, mainly thanks to what I learned from @Steffen K9 🐰 ). I know it's overly verbose, but I'm sure that's no surprise to any of you that have chatted with me on here :P

Instructions are in the comments, although it's probably obvious from the script, it's fairly simple. But I want it to be clear to folks who might not be all that fa... show more

@Adam Gaskins could we just add that to the repository as well?

One addition could be to write all output to some log, preferably in a block, then this could be the friendica log and would still be possible to find it easily.

My script was much easier but covered mostly the same steps, @Hypolite Petovan helped me with that a year ago.

I like the script here and would love to see that in the repository as I said.

echo=$(command -v echo)
git=$(command -v git)
SCRIPTPATH="$( cd "$(dirname "$0")" ; pwd -P )"

cd $http_path
"$git"  pull
#bin/composer.phar update --lock
bin/composer.phar install --no-dev
cd addon
"$git"  pull
"$echo" "Git pull and bin/composer.phar install successful at $(date)" >> $friendica_log
exit 0

Maybe composer.phar install --no-dev because I don't think a normal admin needs developer dependencies

@hoergen it is in both scripts, my minimalistic and's as well?!

Als Mitglied des größten mystischen Ordens der Welt (Illuminati) lade ich Sie ein, sich unserem mystischen Orden anzuschließen, der sich in den letzten Jahren öffentlich der Welt zu offenbaren begann.Weitere Informationen zur Mitgliedschaft erhalten Sie unter dieser Adresse mail:

@Savi @hoergen @utzer OMG I've waited my whole life for this invite in to your secret order! I'll be contacting you right away for my membership card!

@utzer @Hypolite Petovan Yes! This is actually on my TODO items in the script, haha. I was just lazy. Do you think it should use the actual file that friendica uses, the log.out? Or it's own update.log, for example? I guess use could specify either, but I'm just imaging which would be best to suggest in the script. I'll try to update this today! Thanks for the suggestion!

@utzer I like your much more concise script. How do you take care of file ownership? Do you just run the entire script via 'sudo -u www-data /path/to/ (or whatever the case may be)?
I do like the idea of have no user configuration. So you just place this in a subfolder of your friendica root?
This entry was edited (2 months ago)

@Adam Gaskins yes, I place it in a hidden subfolder and run it with sudo -u as you wrote.

@Adam Gaskins this way you do not need to set a path and you don't need to set a user/group.

I am not sure what is the better way.

@utzer doh! ignore my comment if the delete doesn't work properly! I didn't see both comments, but rather just the second, and was confused. This makes perfect sense now. Sorry about that, haha.

This is what I actually do for regular updates:

##Update Friendica Community Forum

echo "Forum Update"

cd /var/www/html/frforum/
sudo -u www-data HOME=/var/tmp/www-data git pull

cd /var/www/html/frforum/addon/
sudo -u www-data HOME=/var/tmp/www-data git pull

cd /var/www/html/frforum/
sudo -u www-data COMPOSER_HOME=/var/tmp/composer bin/composer.phar install --no-dev

##Restart Apache

sleep 2s

service apache2 restart

service php7.2-fpm restart

echo "Forum has been updated"

It's very simple but it works.

@Steffen K9 🐰 I have a couple of questions:
1) How important is the HOME/COMPOSER_HOME variable in the sudo command? I didn't use it my script just because neither of those paths exist on my server, and I wasn't sure they were correct for all setups. Maybe they are just needed during runtime of this command?

2) Why do you restart apache and php? I've never done this during my friendica updates. Is the apache restart just to reload .htaccess? Since I use nginx I handle that sort of thing in my site configs. Is it really needed to even update the htaccess file? I'm not sure about php either - I use fpm as well and always just leave it running after these Friendica updates.

So far, so good, without these bits, but I don't want to ommit anything important that might cause an issue!

I'm not in any way claiming these things aren't needed, but rather I just don't understand what they are doing in these circumstances (and I have made some efforts to figure i... show more

Well 'www-data' has no real home directory. git and composer are both trying to place a directory and cached files in the homedir of the user running them.
At least that's true for me and my system. So I created temp directories for both and use them in environment variables when running the commands.

The restart of Apache isn't necessary. But if you use PHP-FPM I'd advise to at least restart that. PHP is using some code caches and other caches. A restart is cleaning that up. I do that to be sure everything is fresh. :-)

Great info! I think it all makes sense now and I can revise my script without any 'grey' areas! Thanks so much for clearing that up @Steffen K9 🐰 !

@Steffen K9 🐰 Just a quick question to see if I'm going in the right direction with this line of thought - If I wanted to figure out if an update might include a change to the database *before* proceeding with the fetch & merge (pull), would a diff on the existing local and latest remote database.sql file be the way to go about doing this?

!The Linux Luser Group
I came across a very strange problem today. All of the amavisd-new processes on my server were pegged at nearly 100% CPU usage! Restarting the services, or even trying to manually end the processes didn't work initially. I had to break o
... show more

!The Linux Luser Group

A rant about GitHub, and seeking opinions on Gitea

I don't think there's enough discussion around Github. I worry about the myriad possibilities of devious acts M$ could be doing with such a massive database of code, and real-
... show more

#LibrePlanet 2019 videos are live! Watch Lightning Talks with Jeremiah Foster @johns_FSF, Devon McCullough, Danny O'Brien, Daniel Gnoutcheff, Alex Gleason, Dave Mawdsley @DaveMawdsley, Christopher Franco, Fang Shuo Deng, Devin Ulibarri, and Patrick McDermott:

!The Linux Luser Group

This website uses cookies. That said, only uses cookies/tracking within the constraints of what the Friendica project requires to function! No additional JavaScript or tracking code of any kind has been added to this site! We will never sell/release data without valid court order, and we only log what is needed to securely & legally operate the site.