IRC logs for #farmOS, 2023-03-08 (GMT)

2023-03-07
2023-03-09
TimeNickMessage
[09:42:16]<symbioquine[m]>I'm still curious about this;
[09:42:19]<symbioquine[m]>ACTION uploaded an image: (102KiB) < https://libera.ems.host/_matrix/media/v3/download/matrix.org/adJSTPJsmfG... >
[09:42:54]<mstenta[m]>Yea - we don't have a way to alter that list currently
[09:42:55]<mstenta[m]>We could build that - might be a good idea!
[09:42:59]<mstenta[m]>But that would be a separate PR
[09:43:09]<mstenta[m]>(that's what I meant, if that helps clarify my comment)
[09:43:15]<symbioquine[m]>Yeah, that makes sense
[09:44:23]<symbioquine[m]>So a derived installation profile would basically need to replace the whole form?
[09:45:00]<mstenta[m]>If you wanted to alter that form, yes, you would need to fork farmOS and depend on your fork
[09:46:35]<mstenta[m]>It's also tricky because I don't think a module can alter forms at that stage in the installation
[09:46:38]<symbioquine[m]>I wondered about that
[09:46:42]<mstenta[m]>But we'd have to test that, maybe they could... assuming this happens after that module is installed
[09:46:51]<mstenta[m]>So it's a bit of a chicken or egg problem too
[09:47:22]<mstenta[m]>Note: we DO have some logic in `/farm/settings/modules` that will search for modules that are in the "farmOS Contrib" group and automatically display them as options
[09:47:38]<mstenta[m]>I don't think that same logic is used in the farmOS installation form though
[10:47:03]<paul121[m]>That's interesting. A similar question would be if there is away to enable contrib modules during a standard drupal installation?
[10:48:27]<symbioquine[m]>is it core.extension.yml?
[10:49:07]<symbioquine[m]>Never tried it, just ran into that doing some googling on the topic earlier this morning.
[10:51:29]<mstenta[m]>Yea... so if you are "installing from existing config" you can specify in `core.extension.yml` which modules get installed
[10:51:48]<paul121[m]>Interestinggg... that is the simple config object that keeps track of what has been installed!
[10:51:48]<mstenta[m]>Yep!
[10:51:58]<paul121[m]>Don't modify it after you install :-)
[10:52:03]<mstenta[m]>And for someone who is maintaining a site via composer, it makes a lot of sense to commit the config/sync dir with that in it!
[10:52:55]<mstenta[m]>For example, "PODS" in the USDA (built on farmOS) uses a similar repo structure to what I described in the new documentation
[10:53:22]<mstenta[m]>and they have config/sync in the root of the repo
[10:53:23]<mstenta[m]>in settings.php you can specify where the sync directory is
[10:53:40]<mstenta[m]>then, after installing and configuring a site you just run drush cex (config export) and it dumps ALL config YML files into that dir
[10:54:01]<mstenta[m]>then, you run drush site-install --existing-config and it will reinstall WITH that config
[10:54:14]<mstenta[m]>(ps the new page is live! https://farmos.org/hosting/composer/)
[10:56:08]<mstenta[m]>> And for someone who is maintaining a site via composer, it makes a lot of sense to commit the `config/sync` dir with that in it!
[10:56:08]<mstenta[m]>here's another example of this in practice: https://github.com/National-Forestry-Authority/forests
[10:56:37]<mstenta[m]>https://github.com/National-Forestry-Authority/forests/tree/main/config/...
[10:57:31]<mstenta[m]>so... the difference between config/sync in the project repo and config/install (or config/optional) in the modules themselves is: config/install defines the config that should be installed when a module is... and config/sync represents all the config that WAS installed for this particular site
[10:57:48]<mstenta[m]>a key difference is: the YML files in config/sync all have uuids
[10:58:13]<mstenta[m]>because they are a specific instance of the configuration for a specific site
[10:58:57]<mstenta[m]>but after initial install of the modules, all that config becomes the responsibility of the site admin to maintain
[10:59:36]<mstenta[m]>we provide a workaround in our farm_update module for the 99% of users who don't care about that (we auto-revert config to match the module's config/install if it changes upstream with a new version)
[11:00:30]<mstenta[m]>we don't really cover any of this stuff in the "Building farmOS with Composer" guide right now... but it might be helpful to include that in the future... or make another new page for it
[11:43:02]* farmBOT has quit (Ping timeout: 268 seconds)
[11:43:25]* farmBOT has joined #farmos
[11:52:09]<jgaehring[m]>Think I need to skip monthly call today, too behind on a million things, including Field Kit, but hopefully more updates in April!
[11:53:57]<mstenta[m]>That's OK jgaehring - you will be missed!
[13:59:39]<symbioquine[m]>Monthly call in a minute or so: https://meet.jit.si/farmos-community
[13:59:49]<symbioquine[m]>https://farmos.org/community/monthly-call/