You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
Describe the solution you'd like
On the path /var/luet/db/repos/mocaccino-community/treefs/apps/xemacs/21.4.24-r5+6/finalize.yaml, for example, there is a copy of the mocaccino-community repofinalize.yaml.
Needing specific ops at finalization for a specific package, I have added code in the finalize.yaml of the collection (in C-R: /community-repository/packages/apps/finalize.yaml). Generally, it's like this:
install:
{{ range .Values.requires | uniq }}
{{ if or (eq .name "X") (eq .name "gnome-common") (eq .name "gnome") }}
- glib-compile-schemas /usr/share/glib-2.0/schemas > /dev/null 2>&1
{{ end }}
{{ end }}
- update-mime-database /usr/share/mime/
- ldconfig
{{ range .Values.requires | uniq }}
- env-update && source /etc/profile
{{ end }}
But for emacs or xemacs only, I add to the same file:
{{ if and (eq .Values.category "apps") (or (eq .Values.name "emacs") (eq .Values.name "xemacs")) }}
- eselect ctags update ifunset
{{ end }}
{{ if and (eq .Values.category "apps") (eq .Values.name "xemacs") }}
- eselect gnuclient update ifunset
{{ end }}
This entire thing goes to every package now, in /var/luet/db/repos/mocaccino-community/treefs/apps/<name>/<version>/finalize.yaml, regardless the package.
What I would do? How I would prefer?
Keep the first part as global (as before emacs)
Add the second part to the package setup and end up this finalization to the package only:
That would be copied in /var/luet/db/repos/mocaccino-community/treefs/apps/xemacs/21.4.24-r5+6/finalize.yaml, at the end of the install section for that very package only, right after the global finalize.yaml install section content.
Describe alternatives you've considered
Additional context
The text was updated successfully, but these errors were encountered:
Having many packages in a repo, requires particular finalization to some of the and general finalization per batch.
As it is implemented now, it runs the finalization for every package - a fact that renders the finalization defined in the tree's finalize.yaml file for every package.
According to the above, the ideal implementation would be:
Having a finalize file per package as it is now - optionally to add the finalize step in the package definition or in a finalize.yaml file with package entries in the same form as in the collection file, but this would add complexity while as it now is enough to check for the name and category in order to decide what to apply.
Having an additional tree global finalize file, that is run once at the end of the batch and do the common stuff once.
This solution means to reduce installation and especially upgrade times. Now, it may upgrade in minutes, literally, if the finalization would not be so long (hours in the case of some commands runs accumulation).
Is your feature request related to a problem? Please describe.
Describe the solution you'd like
On the path
/var/luet/db/repos/mocaccino-community/treefs/apps/xemacs/21.4.24-r5+6/finalize.yaml
, for example, there is a copy of themocaccino-community repo
finalize.yaml
.Needing specific ops at finalization for a specific package, I have added code in the
finalize.yaml
of the collection (in C-R:/community-repository/packages/apps/finalize.yaml
). Generally, it's like this:install:
But for emacs or xemacs only, I add to the same file:
This entire thing goes to every package now, in
/var/luet/db/repos/mocaccino-community/treefs/apps/<name>/<version>/finalize.yaml
, regardless the package.What I would do? How I would prefer?
That would be copied in
/var/luet/db/repos/mocaccino-community/treefs/apps/xemacs/21.4.24-r5+6/finalize.yaml
, at the end of the install section for that very package only, right after the globalfinalize.yaml
install section content.Describe alternatives you've considered
Additional context
The text was updated successfully, but these errors were encountered: