Tuesday, March 26, 2024
apps@conference.yunohost.org
March
Mon Tue Wed Thu Fri Sat Sun
        1
2
3
4
5
6
7 8 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
             

[00:01:31] <Yunohost Git/Infra notifications> [apps] OniriCorpe pushed 1 commit to translate_apps: translate choices ([1de2234d](https://github.com/YunoHost/apps/commit/1de2234d92c3e5a2d3cf9a586532168797c5f7ee))
[00:40:37] <Yunohost Git/Infra notifications> [apps] OniriCorpe created new branch antifeatures-add-space-after-french-titles
[00:40:37] <Yunohost Git/Infra notifications> [apps] OniriCorpe pushed 1 commit to antifeatures-add-space-after-french-titles: antifeatures: add space after french titles ([53cd4043](https://github.com/YunoHost/apps/commit/53cd40431bd6a09b2cd2b7b26bbd4ff0d8133d3a))
[00:43:14] <Yunohost Git/Infra notifications> [apps] OniriCorpe opened [pull request #2189](https://github.com/YunoHost/apps/pull/2189): antifeatures: add space after french titles
[00:43:15] <Yunohost Git/Infra notifications> [apps] OniriCorpe assigned OniriCorpe on [pull request #2189](https://github.com/YunoHost/apps/pull/2189): antifeatures: add space after french titles
[00:43:15] <Yunohost Git/Infra notifications> [apps] OniriCorpe labeled tools on [pull request #2189](https://github.com/YunoHost/apps/pull/2189): antifeatures: add space after french titles
[01:52:51] <Yunohost Git/Infra notifications> Autoupdater just ran, here are the results:

- 71 pending update PRs
- 11 new apps PRs
- 6 failed apps updates: dokuwiki, elasticsearch8, focalboard, framaforms, tvheadend, vikunja

See the full log here: http://paste.yunohost.org/raw/wecubuheka
[03:47:37] <Yunohost Git/Infra notifications> App webtrees goes down from level 6 to 1 in job [#24694](https://ci-apps.yunohost.org/ci/job/24694)
[07:04:59] <Yunohost Git/Infra notifications> [apps] Tagadda approved [pull request #2189](https://github.com/YunoHost/apps/pull/2189#pullrequestreview-1959476355) antifeatures: add space after french titles
[12:19:01] <Yunohost Git/Infra notifications> [apps] Salamandar [commented](https://github.com/YunoHost/apps/pull/2189#issuecomment-2020278484) on [issue #2189](https://github.com/YunoHost/apps/pull/2189) antifeatures: add space after french titles: That’s one awful trick, i’m afraid there will be repercutions somewhere else… but OK for me.
[14:28:30] <Yunohost Git/Infra notifications> [apps] OniriCorpe [commented](https://github.com/YunoHost/apps/pull/2189#issuecomment-2020583859) on [issue #2189](https://github.com/YunoHost/apps/pull/2189) antifeatures: add space after french titles: We can do differently too if you prefer
[18:02:34] <Salamandar> https://aria.im/_matrix/media/v1/download/matrix.org/QJKTJycELsfzQviMBrMAtBbX
[18:02:43] <Salamandar> "Same" went up really fast !!"
[18:02:47] <Salamandar> Broken is ~109 apps
[18:03:11] <Salamandar> regressions are mostly "test_upgrade_from" failing because "from" version is broken on bookworm
[18:08:53] <Aleks (he/him/il/lui)> yeah regressions are probably fine
[18:12:22] <orhtej2> I'd recommend manual testing in bookworm as some apps are displaying rough edges
[18:13:20] <orhtej2> Also some apps are unmaintained and permabroken for Debian 12 due to missing deps
[18:19:36] <Salamandar> > Also some apps are unmaintained and permabroken for Debian 12 due to missing deps

ah which ones are you thinking about ?
[19:03:47] <orhtej2> > <@Salamandar:matrix.org> ah which ones are you thinking about ?

Ffsync that relies on python2
[19:22:24] <Salamandar> ah yeah but ffsync is not supported anymore, replaced by https://github.com/mozilla-services/syncstorage-rs in rust
[19:48:00] <anubister> hello, pourriez vous me donner les droits de poster sur le forum dans Announcements/Apps ?
[19:48:16] <anubister> (anubis)
[20:12:05] <Aleks (he/him/il/lui)> can you elaborate why ?
[20:21:50] <anubister> to post a call for test for Prosody (https://github.com/anubister/prosody_ynh/) , or this forum section is only for official apps?
[20:33:11] <Émy - OniriCorpe> > <@Salamandar:matrix.org> ah yeah but ffsync is not supported anymore, replaced by https://github.com/mozilla-services/syncstorage-rs in rust

maybe tag the app as "replaced-by-another-app"?
[20:33:27] <Salamandar> ah it's not ?
[20:33:29] <Salamandar> crap
[20:34:09] <Émy - OniriCorpe> but it's not good that we can't specify which app replaces it
[20:34:17] <Émy - OniriCorpe> > <@Salamandar:matrix.org> ah it's not ?

only tagged as deprecated
[20:34:30] <Salamandar> y
[20:34:59] <Yunohost Git/Infra notifications> [apps] OniriCorpe pushed 1 commit to tag-ffsync-as-replaced-by-another-app: tag ffsync as replaced-by-another-app ([6dcf216b](https://github.com/YunoHost/apps/commit/6dcf216b479f07f1cdac74a6b4aec85c6ff9cc33))
[20:35:00] <Yunohost Git/Infra notifications> [apps] OniriCorpe created new branch tag-ffsync-as-replaced-by-another-app
[20:35:22] <Yunohost Git/Infra notifications> [apps] OniriCorpe opened [pull request #2190](https://github.com/YunoHost/apps/pull/2190): tag ffsync as replaced-by-another-app
[20:36:20] <Yunohost Git/Infra notifications> [apps] OniriCorpe labeled ready to merge on [pull request #2190](https://github.com/YunoHost/apps/pull/2190): tag ffsync as replaced-by-another-app
[20:36:24] <Yunohost Git/Infra notifications> [apps] Auto-merge has been enabled by OniriCorpe on [pull request #2190](https://github.com/YunoHost/apps/pull/2190): tag ffsync as replaced-by-another-app
[20:45:40] <Émy - OniriCorpe> okay i added mention of syncstorage on DESCRIPTION.md, warn users with a PRE_UPGRADE.md, merged a small fix, and archived the repo https://github.com/YunoHost-Apps/ffsync_ynh/pull/51
[20:57:40] <orhtej2> > <@oniricorpe:im.emelyne.eu> current mood: "it would be very nice if [app] is packaged, but lol i prefer to die than package it myself lol"

BigBlueButton?
[20:57:43] *orhtej2 leaves
[20:58:01] <Émy - OniriCorpe> current mood: "it would be very nice if \[app\] was packaged, but lol i prefer to die than package it myself lol"
[20:58:07] <Émy - OniriCorpe> > BigBlueButton?

ahahah
[20:59:20] <Émy - OniriCorpe> no, cattr, but i don't want to maintain a php composer/yarn shit app
[20:59:25] <Émy - OniriCorpe> https://github.com/cattr-app/server-application
[20:59:31] <orhtej2> can't be that bad

```
composer install
php artisan key:generate
yarn
```


[21:00:22] <orhtej2> (neither this thing I forgot the name of was supposed to be where `$ynh_npm` proceeds to call `npm` and everything blows up because node 9.x is in `$PATH`)
[21:00:26] <orhtej2> ToolJet
[21:03:50] <Salamandar> yeah it's easy to copypaste it :p
[21:12:47] <Émy - OniriCorpe> https://aria.im/_matrix/media/v1/download/im.emelyne.eu/EEgSzqjCddWdlExCHEAgzzzq
[21:12:54] <Émy - OniriCorpe> when i see composer:
[21:14:52] <Émy - OniriCorpe> the key point is "i don't want to maintain a php composer/yarn shit app"
[21:22:31] <Aleks (he/him/il/lui)> when i see software mixing several technologies such as php + nodejs at the same time

https://i0.wp.com/media2.giphy.com/media/7yDthHaq2haXS/giphy.gif
[21:24:47] <orhtej2> I was joking because a lot of my grey hair were caused by my saying "It's simple, I just need to..."
[21:30:06] <Émy - OniriCorpe> > I was joking because a lot of my grey hair were caused by my saying "It's simple, I just need to..."

ah, yes, https://github.com/YunoHost/issues/issues/2366
[21:39:43] <Bram> I know everyone is going crazy rewriting everything in rust for python tooling but dear plz someone do that for composer T_T
[21:48:24] <Tag> > <@yunohostinfra:matrix.org> [apps] OniriCorpe pushed 1 commit to tag-ffsync-as-replaced-by-another-app: tag ffsync as replaced-by-another-app ([6dcf216b](https://github.com/YunoHost/apps/commit/6dcf216b479f07f1cdac74a6b4aec85c6ff9cc33))

ça me fait des notifs à chaque fois :')
[21:48:51] <Émy - OniriCorpe> tag
[21:49:40] <orhtej2> it's TAGGING you?
[21:51:17] <Tag> !!!
[21:52:12] <Émy - OniriCorpe> tag, you're it!
[21:53:35] <Tag> i am TAG
[21:53:45] <Tag> tag is me
[21:55:13] <Tag> walk among a tree
[21:55:13] <Émy - OniriCorpe> https://en.wikipedia.org/wiki/Tag_(game)
[21:55:14] <Tag> ah oui
[21:55:14] <Bram> "touche touche" ou "c'est toi le chat" in 🥖
[21:55:57] <Tag> l'anglais, cette langue qui a des mots qui ont un sens en dehors de l'informatique
[21:57:16] <Aleks (he/him/il/lui)> s/tag/tаg in the bot ? 👀
[21:57:39] <Tag> oh, smart, will probably do
[21:57:45] <Tag> si j'y pense demain :')
[21:58:23] <Bram> (I'm still amazed that this bot it still working that well after that much years)
[21:58:25] <Émy - OniriCorpe> > <@Alekswag:matrix.org> s/tag/tаg in the bot ? 👀

gné ? x)
[21:58:41] <Aleks (he/him/il/lui)> tag != tаg 😬
[21:58:47] <Bram> (for something I did in a like ... 2-3 days? I don't remember)
[21:58:47] <Aleks (he/him/il/lui)> https://www.irongeek.com/homoglyph-attack-generator.php
[21:59:19] <Tag> https://en.wikipedia.org/wiki/Zero-width_space
[21:59:51] <Tag> > <@Alekswag:matrix.org> https://www.irongeek.com/homoglyph-attack-generator.php

c'est bien aussi
[22:00:01] <Émy - OniriCorpe> but you're still taggd by the bot, even if i removed the @ before the pseudo?
the bot doesn't ping me anymore
[22:00:04] <Bram> also I realized that you did copy/paste the code of this bot everywhere do to other webhooks T^T
[22:00:14] <Tag> :')
[22:00:34] <Tag> > <@oniricorpe:im.emelyne.eu> but you're still taggd by the bot, even if i removed the @ before the pseudo?
> the bot doesn't ping me anymore

yup
[22:02:35] <Émy - OniriCorpe> > <@tag:lostpod.me> yup

sigh
[22:02:36] <Émy - OniriCorpe> computerz
[22:02:51] <Bram> that's probably a client configuration issue
[22:03:57] <Salamandar> you can configure keywords to be pinged by
[22:04:00] <Tag> default element web i think
[22:04:04] <Salamandar> i am pinged by felix félix salamandar
[22:04:22] <Aleks (he/him/il/lui)> t̸̥͐à̵̠g̶̗͐
[22:04:37] <Tag> > <@Salamandar:matrix.org> you can configure keywords to be pinged by

iirc you can't choose to not be pinged by your username, mine is tag :')
[22:04:42] <Salamandar> > <@Alekswag:matrix.org> t̸̥͐à̵̠g̶̗͐

yes btw
[22:05:05] <Salamandar> https://aria.im/_matrix/media/v1/download/matrix.org/jufPoQPQFHvspGDYXfAoeENt
[22:05:17] <Salamandar> because of tests we did some weeks ago
[22:05:20] <Salamandar> ><'
[22:05:31] <Aleks (he/him/il/lui)> x')
[22:05:53] <Émy - OniriCorpe> > <@tag:lostpod.me> iirc you can't choose to not be pinged by your username, mine is tag :')

but i(m not pingued by "OniriCorpe" but by "@OniriCorpe"
[22:06:06] <Bram> U w U
[22:06:10] <Aleks (he/him/il/lui)> yᵘʷᵘn๏ђ๏st
[22:06:18] <Salamandar> yunocursed
[22:06:37] <Bram> ah, I wanted to write a curse UI at some point for yunohost
[22:06:55] <Émy - OniriCorpe> allez, YunoOuste
[22:07:01] <Yunohost Git/Infra notifications> [apps] yunohost-bot opened [pull request #2191](https://github.com/YunoHost/apps/pull/2191): Translations update from Weblate for readme-generator
[22:07:03] <Salamandar> ncurses ?
[22:07:07] <Salamandar> or ncursed ?
[22:07:13] <Aleks (he/him/il/lui)> vaporwave admin wen
[22:07:58] <Bram> urwid
[22:10:28] <Yunohost Git/Infra notifications> [apps] OniriCorpe approved [pull request #2191](https://github.com/YunoHost/apps/pull/2191#pullrequestreview-1961836221) Translations update from Weblate for readme-generator
[22:10:38] <Bram> > <@yunohostinfra:matrix.org> [apps] yunohost-bot opened [pull request #2191](https://github.com/YunoHost/apps/pull/2191): Translations update from Weblate for readme-generator

waw, Italian and maybe simplified chinese? I'm not sure
[22:11:32] <Bram> Aleks (he/him/il/lui): btw, is `apps/tools/readme_generator/regen_readme_in_batch.py` your script?
[22:11:39] <Bram> which is on saperlipopette
[22:11:54] <Aleks (he/him/il/lui)> 😶‍🌫️
[22:11:55] <Bram> I'm wondering why it's not in git, we kinda want to launch it from time to time now
[22:12:23] <Aleks (he/him/il/lui)> it depends, is it a gud script ? 😬
[22:12:39] <Bram> looks good enough
[22:13:05] <Bram> idk why it uses asyncio while not doing things in parallels but appart from that it's fine
[22:13:47] <Bram> like everything is done asynchronously ... in a single function in a single loop
[22:14:11] <Bram> which would be the same exact result as writing it synchronously
[22:14:14] <Aleks (he/him/il/lui)> wut there's indeed some async o.O
[22:14:30] <Bram> appart from that which is weird it's good
[22:14:43] <Bram> I'm wondering if the async part isn't coming from some old copy pasta
[22:15:04] <Aleks (he/him/il/lui)> yeah probably wrote this like in a total yolo fashion
[22:15:21] <Bram> but since we are getting new translations I kinda want to launch this kind of script once per week or idk
[22:15:42] <Bram> just to push new translation online instead of waiting for the manifest.toml to be modified
[22:15:49] <Aleks (he/him/il/lui)> anyway feel free to commit / refactor yeah
[22:15:55] <Bram> ok, thx ❤️
[22:17:20] <Aleks (he/him/il/lui)> there are probably more clever way to do all this anyway, like the `git()` function is probably pretty hackish but i'm confused wether the cool thing is to use pygit or pygithub (dunno what they're called exactly)
[22:18:58] <Bram> honestly for a script like that we really don't care, subprocess is good enough
[22:19:01] <Aleks (he/him/il/lui)> also there's the stupid question of "committing to master" versus "committing to testing", and what's the default branch of the repo and how to make sure testing ain't behind master uuugh that's super boring
[22:19:21] <Bram> there are important things to do and this is the detail level, it won't change anything the job will still be done
[22:19:36] <Bram> > <@Alekswag:matrix.org> also there's the stupid question of "committing to master" versus "committing to testing", and what's the default branch of the repo and how to make sure testing ain't behind master uuugh that's super boring

ah gosh I have this same problem with translations x_x
[22:19:47] <Bram> like Émy is asking for things to be on the testing branch
[22:20:13] <Bram> but idk if everyone has a testing branch so I'm gonna play the game of "if there is a testing branch push on it otherwise master or main"
[22:20:25] <Bram> but your point about "is testing behind" makes sens :<
[22:22:21] <Aleks (he/him/il/lui)> i mean for the README ideally we want to commit to whatever is the default branch shown in github interface (which i guess is master ?) but i could see situation where this creates boring conflicts on a testing PR
[22:22:36] <Aleks (he/him/il/lui)> and if we commit to testing we gotta merge the change ~_~
[22:23:02] <Aleks (he/him/il/lui)> but idk maybe not thinking too much about it maybe commiting to master is fine
[22:23:15] <Aleks (he/him/il/lui)> but the translations thing seems trickier
[22:24:00] <Aleks (he/him/il/lui)> we could also imagine something different like a centralized .po that yunohost fetches regularly similar to the catalog
[22:24:38] <Aleks (he/him/il/lui)> (i'm just brainstorming out loud)
[22:24:44] <Bram> idk, my current approach is to push everythin in the apps
[22:25:01] <Bram> and I'm using an intermediate repository for that because weblate is: annoying
[22:26:03] <Aleks (he/him/il/lui)> ultimately we have various issues related to the fact that every app has its own repo versus having one gigantic repo like nix or other project do (though probably they have other issues and i can't imagine having every PRs and issues in a single repo either) but for mass-refactoring it's convenient
[22:26:47] <Bram> yeah definitively
[22:27:13] <Bram> the monorepo thing is popular but I don't see it working here in a setting that isn't a gigantic company
[22:27:15] <Aleks (he/him/il/lui)> (thinking about this in terms of CI management too)
[22:28:21] <Bram> tbf we used to have just one central .po file which was quite a mess
[22:28:31] <Bram> not I'm generating a component per app on weblate
[22:28:34] <Aleks (he/him/il/lui)> ah ?
[22:28:42] <Bram> well it was a .json file
[22:28:51] <Aleks (he/him/il/lui)> ah yes
[22:29:09] <Bram> I used to extract everything from apps and push them in a gigantic .json file which was pushed on weblate and it was like "hello, translate 1234A2354242 strings plz"
[22:29:16] <Bram> them it was compiled and push to every yunohost instances
[22:29:58] <Aleks (he/him/il/lui)> iirc it was a mess partly because every app has it's own "Choose a domain for app $app" and translators had to translate a gazillion time the same string with small variation and now it's standardized in the core; but maybe it was a mess for other reason
[22:30:20] <Bram> I don't remember exactly :(
[22:30:50] <Bram> if you haven't read it yet I'm trying to explain my approach here https://github.com/YunoHost/issues/issues/2366
[22:31:27] <Aleks (he/him/il/lui)> https://i.imgflip.com/pre2n.jpg
[22:32:19] <Bram> yeah T_T
[22:32:23] <Bram> it was SIMPLE at first
[22:32:40] <Bram> I kinda feel a bit overwhelmed and I'm probably going to cut that into several steps
[22:33:20] <Aleks (he/him/il/lui)> howtodrawanowl.jpg
[22:33:31] <Bram> yeah 🥲
[22:34:02] <Bram> anyway, I have two scripts that works, one that pull everything from apps and push them to the central git repository and create the matching weblate component
[22:34:21] <Bram> and another one that pulls things from the central github repository and push them to apps
[22:34:31] <Bram> but ofc tomlkit is more annoying than expected
[22:37:31] <Salamandar> why is that ?
[22:38:00] <Salamandar> well you need to keep objects as tomlkit objets, and not transform them into python native objects
[22:38:03] <Salamandar> but that's all
[22:38:21] <Salamandar> are you translating only the manifest.toml ? or also the doc/ directory of apps ?
[22:39:54] <Bram> https://github.com/YunoHost-Apps/fluffychat_ynh/pull/17/commits/f3814575c1982704f9d2845e045e86d04de76c4b
[22:40:03] <Bram> https://aria.im/_matrix/media/v1/download/matrix.org/DfptYPvOepAFiwTUgEYdPxzL
[22:40:07] <Bram> this idiot doesn't respect indentation
[22:40:17] <Aleks (he/him/il/lui)> ah yeah
[22:40:35] <Aleks (he/him/il/lui)> dunno if it was the same lib but i had to use stupid tricks
[22:40:40] <Bram> so I'm going to use out schema stuff with a formatter but uniformise everything yadiyadida
[22:42:31] <Aleks (he/him/il/lui)> https://github.com/YunoHost/apps/blob/master/tools/packaging_v2/convert_app_to_packaging_v2.py#L328
[22:43:40] <Aleks (he/him/il/lui)> and also it didn't like writing stuff as `foo.bar = value`, it wanted to write `bar = value` in a standalone 'foo' section ~\_~
[22:44:55] <Bram> > <@Alekswag:matrix.org> https://github.com/YunoHost/apps/blob/master/tools/packaging_v2/convert_app_to_packaging_v2.py#L328

urgh :(
[22:45:02] <Bram> but I have to detect indentation of the sectiont hen x_x
[22:45:09] <Bram> something simple made hard ™
[22:45:12] <Aleks (he/him/il/lui)> >create a new component per application on weblate

are you really sure about this though, doesn't it mean packagers are going to have to go through 500+ components ? x_x
[22:45:24] <Bram> translators you mean?
[22:45:30] <Aleks (he/him/il/lui)> yea
[22:45:36] <Bram> but yeah, there is not great in between solution :(
[22:46:18] <Bram> since we are generating README now I kinda want to put that kind of image in the README of each translatable app
[22:46:21] <Bram> https://aria.im/_matrix/media/v1/download/matrix.org/avxmkBqxYqQOkaRJbOvlESkM
[22:46:29] <Bram> pointing to the correct component
[22:46:43] <Bram> hoping this will motivate translators to work on the apps they like
[23:01:35] <Aleks (he/him/il/lui)> zbglruhfg my brain hurts thinking about what's the right way, like on one hand it's pretty cool that the translations are in each app repo directly because then you just have to git clone and you have all the info, but on the other hand we could imagine a new .deb like `yunohost-app-translations` which would contain all the strings, and that would bypass all the logistic of having to commit the translation back to the app repo, but that means we sort of have to refactor all the places in the code where we translate app strings and ultimately deprecate having all the `en: ...`, `fr: ...` strings in the manifest
[23:02:17] <Aleks (he/him/il/lui)> but on the other hand having the `en: ...`, `fr: ...`, whatever string directly in the manifest (and config panel) was bad design in the first place if we really want to "scale" translations
[23:02:34] <Aleks (he/him/il/lui)> https://botsin.space/@scream
[23:04:34] <Bram> yeah
[23:04:35] <Bram> mood
[23:07:39] <Bram> I've tried the previous approach in the past of centralizing everything, now I'm switching to pushing everything in the app and having maintainers handle translation PR
[23:07:44] <Bram> we'll see if it works :/
[23:08:51] <Aleks (he/him/il/lui)> https://i.imgflip.com/8kmd9a.jpg
[23:09:02] <Bram> yeah, mood
[23:12:18] <Bram> yunoppossum
[23:13:03] <Bram> right now I've started a beta phase with apps that accepted to receive translation, we'll see how maintenters experience that
[23:13:17] <Bram> the feedback can make me switch back to the central approach instead
[23:42:44] <Émy - OniriCorpe> > <@Alekswag:matrix.org> >create a new component per application on weblate
>
> are you really sure about this though, doesn't it mean packagers are going to have to go through 500+ components ? x_x

ctrl f