Gotosocial, a fediverse server written in Golang

That’s confusing. The admin panel is hosted elsewhere :roll_eyes:. I think it should be added to the installation script so the server and its admin panel are both selfhosted. May be pinafore also.

Yes if the admin panel is not too hard to host, it would be cool to have the option to self-host it.
Maybe an option during install.

I’m a volunteer, I do this as I can at a pace that doesn’t tire me
I plan to package the GTS admin panel as a separate package (since it is optional) and to propose the automatic installation when installing GoToSocial, but it will come when it comes
In the meantime you can use the instance proposed by the GTS developers
However I don’t plan to package Pinafore

And keep in mind that GoToSocial is an alpha software, as mentionned in the readme
So it’s a normal thing that everything is not perfect and that some features are missing
This is also true for my package of it!


I think maybe installation instructions and a quick start guide of the first things a user should do would be helpful.

Everything you proposed is already written in the readme, but in a different way
Maybe I should rephrase it, but at first sight all the information is there


Do I need to choose what instances I federate with? I can see my posts on my GTS on Mastodon.social federated timeline, but my Federated timeline is empty. I have already followed a few people.

The behavior of GTS is to federate with all possible instances if they are not part of the blocklist
Federation can take time, if you can, try to make some public posts
And if you have an account elsewhere on the fediverse, you can boost those public posts to make your instance known to other instances

If I change options in the ./config.yaml file, do I need to stop and start GTS? If so, how do I do that? Like this maybe:

Use the yunohost administration interface to restart the service, or service gotosocial restart
This way the service will be properly in the background and with the protections provided by systemd

Is there a way to delete statuses/posts/toots/media older than a certain period? I would like to have posts be delete after 1 year.

There are external tools dedicated to that, I don’t use them so I didn’t remember names

When clicking on the profile of someone I follow, I can’t see any of their toots? Will I only see the toots of them after I had added them?

This is the normal way of working, your instance is only aware of the posts that were created after the beginning of the federation with another instance

2 Likes

Thanks for the information! I’ll keep playing around with this and follow your suggestions.

1 Like

Uh, i’m tired, I forgotten about that:

If I change options in the ./config.yaml file, do I need to stop and start GTS? If so, how do I do that? Like this maybe:

Do not edit the config.yaml file by hand. Always use this config panel instead. Otherwise your changes will be deleted at each update!
explanations here ^^

But if you need to restart the GTS service, proceed as described in the previous message :slight_smile:

1 Like

OMG please don’t manipulate the database directly :fearful:
you can break things in the functioning of gotosocial by doing so

I have not :laughing:

Just executed user creation command adding database user and pass to access it, otherwise it prompts this error:

time=2022-05-14T12:51:13+02:00 level=fatal msg=error executing command: error creating dbservic
e: postgres ping: failed to connect to host=/var/run/postgresql user=root database=gotosocial
: server error (FATAL: password authentication failed for user “root” (SQLSTATE 28P01))

as I’m connected to YNH server using ssh as root user.

This:

./gotosocial admin account create --username some_username  --email someuser@example.org --password 'somelongandcomplicatedpassword' --db-user gotosocial --db-password thatlongpassword

Might it be that $GLOBAL settings in config file are not read or passed to the binary?

1 Like

@OniriCorpe thank you for your work

I put here this “problems” to help develop as this is the only way I can contribute. Take your time to improve/solve issues. Thank you.

2 Likes

Oh I see! :sweat_smile:

I just tried it on my test instance and I see the same thing

I posted this in the GTS chat group:

I would like to know if this behaviour is normal
an user of my yunohost package reported this to me and I have the problem too
the GTS server is running, I run the user creation command, and it returns an error asking me to authenticate to the database

./gotosocial admin account create --username test_user --email test@example.com --password "someextracomplicatedpassword"
time=2022-05-14T18:42:43+02:00 level=fatal msg=error executing command: error creating dbservice: postgres ping: failed to connect to `host=/var/run/postgresql user=root database=gotosocial`: server error (FATAL: authentification par mot de passe échouée pour l'utilisateur  « root » (SQLSTATE 28P01))

the user in question has bypassed using --db-user gotosocial --db-password thatlongpassword however from my point of view as a packager, I don’t want users to have to go digging for that password

btw feel free to joint those chats on matrix :slight_smile:
General #gotosocial:superseriousbusiness.org
Help #gotosocial-help:superseriousbusiness.org
Code #gotosocial-code:superseriousbusiness.org

edit : okay, I got an answer

that’s kind of annoying yeah, ran into that too because my gotosocial user is a system account and my postgres uses peer auth
ideally that’d be fixed with the cli talking to the running gotosocial server instead of doing things manually in the database, imo

and I opened an issue

edit2:
okay, commands should start with ./gotosocial --config-path config.yaml to retrieve the DB credentials
I’ve edited the readme accordingly and fixed a residual upgrade bug, so an update will be released

2 Likes

I had to disable Pi-Hole in order to be able to use it the first time. I published my first post and now, even with Pi-Hole enabled everything seems to work.

1 Like

updated to 0.3.5-ynh

process run without issues, now we have

  • admin panel at domain.tld/admin
  • mastodon official android app works fine with gotosocial. Tested in /e/ (lineageOS fork), f-droid version.

thanks :heart:

2 Likes

first I upgraded my YNH to 11 (without issues, almost :stuck_out_tongue: )

then tried to upgrade gotosocial from (gotosocial) 0.3.8~ynh1 to 0.3.8~ynh3

may this be the problem?

2022-08-17 06:25:23,713: WARNING - /usr/share/yunohost/helpers.d/logrotate: line 30: all_args[$I]: unbound variable

full log here: https://paste.yunohost.org/raw/exibejusoj

thank you! (as usual)

1 Like

it’s really weird, this error never happened during my tests (nor my friends’) and especially has nothing to do with what I updated in the package

can you check that you don’t have any pending migration with this command yunohost tools migrations list?
and try again the GTS update?

thank you

I’ve a “pending” migration for package gcc-8-base as you can read here YunoHost 11.0 (Bullseye) release / Sortie de YunoHost 11.0 (Bullseye) - #197 by ghose

So far I can not resolve it using CLI nor webadmin. It’s not a big issue (ATM) but… could it be related?

(I have updated and reboot server)

Maybe it has to do with this?

…which is referenced in this forum thread…

1 Like

update to 0.6 version went fine, everythings is up

control panel from ynh admin web interface has a lot of new options. Changed some and it worked fine (so far).

thank you @OniriCorpe :hugs:

2 Likes
  • I’m seeing {“en”: “Main configuration”, “fr”: “Configuration principale” } message at the top, that I take is the title of the section.
  • And after that I see a pale green box, that looks like an empty alert.

I guess they are just aesthetic details.

And one question:

There is an area to set the “number of days to cache media from remote instances before they are removed from the cache”. Is this not the same as the option within the gotosocial admin settings > Admin > Actions > Media cleanup that read Clean up remote media older than the specified number of days. If the remote instance is still online they will be refetched when needed. Also cleans up unused headers and avatars from the media cache.? What is the difference?

1 Like

Hi people :smiley:

this weekend I’ve migrated my YNH server from SD card to SSD-usb and 32 to 64bit, at the same time.

Almost everything went fine (minor issues already solved), but there’s only one service I could not make it work again: gotosocial.

I had a backup file (as with other apps) and restore process ends without issues, but then I get a “nginx 502 error”. I’ve been reading logs, trying to manually restore DB (if that was the problem), etc. as with other issues, but I don’t know what else to do but asking here about any possible path to follow.

Here there are logs from restoring gotosocial from backup and info when trying to start the service from webinterface

Finally, if I install from zero then apparently there is no problem and service starts normally and is served in the web. I’ve tried to manually restore database from backup, but I could not :frowning: , it’s beyond my skills.

appreciate any help, thank you.

restore from backup

https://paste.yunohost.org/raw/tidocavuli

subproceso 1 (update permission for user)

https://paste.yunohost.org/raw/imopisikez

subproceso 2 (regen-conf)

https://paste.yunohost.org/raw/wewikigoxo


trying to force with yunohost tools regen-conf gotosocial__2 (failed)

https://paste.yunohost.org/raw/pojosihaqi





and

when trying to start de service (from webadmin interface)

Jan 15 19:59:26 systemd[1]: Starting GoToSocial Server...
Jan 15 19:59:26 systemd[1]: Started GoToSocial Server.
Jan 15 19:59:26 systemd[1]: gotosocial__2.service: Main process exited, code=killed, status=31/SYS
Jan 15 19:59:26 systemd[1]: gotosocial__2.service: Failed with result 'signal'.
Jan 15 19:59:26 systemd[1]: gotosocial__2.service: Scheduled restart job, restart counter is at 1.
Jan 15 19:59:26 systemd[1]: Stopped GoToSocial Server.
Jan 15 19:59:26 systemd[1]: Starting GoToSocial Server...
Jan 15 19:59:26 systemd[1]: Started GoToSocial Server.
Jan 15 19:59:26 systemd[1]: gotosocial__2.service: Main process exited, code=killed, status=31/SYS
Jan 15 19:59:26 systemd[1]: gotosocial__2.service: Failed with result 'signal'.
Jan 15 19:59:26 systemd[1]: gotosocial__2.service: Scheduled restart job, restart counter is at 2.
Jan 15 19:59:26 systemd[1]: Stopped GoToSocial Server.
Jan 15 19:59:26 systemd[1]: Starting GoToSocial Server...
Jan 15 19:59:26 systemd[1]: Started GoToSocial Server.
Jan 15 19:59:26 systemd[1]: gotosocial__2.service: Main process exited, code=killed, status=31/SYS
Jan 15 19:59:26 systemd[1]: gotosocial__2.service: Failed with result 'signal'.
Jan 15 19:59:26 systemd[1]: gotosocial__2.service: Scheduled restart job, restart counter is at 3.
Jan 15 19:59:26 systemd[1]: Stopped GoToSocial Server.
Jan 15 19:59:26 systemd[1]: Starting GoToSocial Server...
Jan 15 19:59:26 systemd[1]: Started GoToSocial Server.
Jan 15 19:59:26 systemd[1]: gotosocial__2.service: Main process exited, code=killed, status=31/SYS
Jan 15 19:59:26 systemd[1]: gotosocial__2.service: Failed with result 'signal'.
Jan 15 19:59:27 systemd[1]: gotosocial__2.service: Scheduled restart job, restart counter is at 4.
Jan 15 19:59:27 systemd[1]: Stopped GoToSocial Server.
Jan 15 19:59:27 systemd[1]: Starting GoToSocial Server...
Jan 15 19:59:27 systemd[1]: Started GoToSocial Server.
Jan 15 19:59:27 systemd[1]: gotosocial__2.service: Main process exited, code=killed, status=31/SYS
Jan 15 19:59:27 systemd[1]: gotosocial__2.service: Failed with result 'signal'.
Jan 15 19:59:27 systemd[1]: gotosocial__2.service: Scheduled restart job, restart counter is at 5.
Jan 15 19:59:27 systemd[1]: Stopped GoToSocial Server.
Jan 15 19:59:27 systemd[1]: gotosocial__2.service: Start request repeated too quickly.
Jan 15 19:59:27 systemd[1]: gotosocial__2.service: Failed with result 'signal'.
Jan 15 19:59:27 systemd[1]: Failed to start GoToSocial Server.

Hi ghose!
Restore your backup of your old GTS then force update it, this should change the GTS binary with the one for your new architecture

yunohost app upgrade gotosocial --force

2 Likes

:heart: :heart: :heart: :heart: :innocent:

thank you!

instance is back online :ok_hand:

2 Likes

0.8.0 update :rocket:

I’ve lost bookmarks :person_shrugging: after upgrading.

Also:

just opened an issue for a minor problem we have since “custom CSS” was introduced.

this setting is not persistent after upgrading.

Thank you!!

2 Likes

has anyone ever tried using the option to “steal” emojis from other toots? does it work fine for everyone?

how do you do this?