* Dovecot + pigeonhole packaging
@ 2019-08-28 17:11 Alexey Abramov
2019-08-29 6:01 ` Gábor Boskovits
0 siblings, 1 reply; 4+ messages in thread
From: Alexey Abramov @ 2019-08-28 17:11 UTC (permalink / raw)
To: help-guix
Hi guix,
My system requires me to have dovecot and pigeonhole. So I packaged it. I
created two none public packages and merged them into one big package.
But wouldn't it be better to do it the same way as debian does?Every
component lives in a separate package, and if I need some library I don't
have to install the giant package.
The problem I encountered is that dovecot has mail_plugin_dir property
which does not accept multiple folders. It means I have to put and install
new plugins in the very same directory with existing plugins. rpath is not
an option here. Even if a library knows where to load its dependencies,
dovecot doesn't aware of it.
Is there a way to have shared store folder? Debian overrides rpath to all
dovecot extensions and set it to /usr/dovecot/lib.
Or maybe create a dummy package and use it as a storage for the libraries?
What is the right approach here?
I also checked how nixos does it, and I don't like this approach, they
patch source code and install their libs in /etc
--
Alexey
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Dovecot + pigeonhole packaging
2019-08-28 17:11 Dovecot + pigeonhole packaging Alexey Abramov
@ 2019-08-29 6:01 ` Gábor Boskovits
2019-08-30 19:46 ` Alexey Abramov
0 siblings, 1 reply; 4+ messages in thread
From: Gábor Boskovits @ 2019-08-29 6:01 UTC (permalink / raw)
To: Alexey Abramov; +Cc: help-guix
Hello Alexey,
Alexey Abramov <levenson@mmer.org> ezt írta (időpont: 2019. aug. 28., Sze,
22:30):
> Hi guix,
>
>
> My system requires me to have dovecot and pigeonhole. So I packaged it. I
> created two none public packages and merged them into one big package.
>
Is this on Guix System?
If yes, then guix system has a dovecot-service:
https://guix.gnu.org/manual/en/html_node/Mail-Services.html
maybe you could have a look at that, and see if it helps.
>
> But wouldn't it be better to do it the same way as debian does?Every
> component lives in a separate package, and if I need some library I don't
> have to install the giant package.
>
In guix packages can be split to multiple outputs. You can also define
separate packages,
but these are less common. Would multiple outputs make sense in this case?
https://guix.gnu.org/manual/en/html_node/Packages-with-Multiple-Outputs.html
>
>
> The problem I encountered is that dovecot has mail_plugin_dir property
> which does not accept multiple folders. It means I have to put and install
> new plugins in the very same directory with existing plugins. rpath is not
> an option here. Even if a library knows where to load its dependencies,
> dovecot doesn't aware of it.
>
>
> Is there a way to have shared store folder? Debian overrides rpath to all
> dovecot extensions and set it to /usr/dovecot/lib.
>
If dovecot follows symlinks on plugin resoltuion, then the service
configuration
could be extended by a plugins keyword, like it was for postgresql
extensions,
that sets up a symlink is a well known location to the store item of the
package
providing the plugin.
>
> Or maybe create a dummy package and use it as a storage for the libraries?
> What is the right approach here?
>
>
> I also checked how nixos does it, and I don't like this approach, they
> patch source code and install their libs in /etc
>
>
> --
> Alexey
>
>
>
>
Best regards,
g_bor
--
OpenPGP Key Fingerprint: 7988:3B9F:7D6A:4DBF:3719:0367:2506:A96C:CF63:0B21
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Dovecot + pigeonhole packaging
2019-08-29 6:01 ` Gábor Boskovits
@ 2019-08-30 19:46 ` Alexey Abramov
2019-09-01 6:37 ` Gábor Boskovits
0 siblings, 1 reply; 4+ messages in thread
From: Alexey Abramov @ 2019-08-30 19:46 UTC (permalink / raw)
To: Gábor Boskovits; +Cc: help-guix
Gábor Boskovits <boskovits@gmail.com> writes:
> Hello Alexey,
>
> Alexey Abramov <levenson@mmer.org> ezt írta (időpont: 2019. aug. 28., Sze,
> 22:30):
>
>> Hi guix,
>>
>>
>> My system requires me to have dovecot and pigeonhole. So I packaged it. I
>> created two none public packages and merged them into one big package.
>>
>
> Is this on Guix System?
> If yes, then guix system has a dovecot-service:
> https://guix.gnu.org/manual/en/html_node/Mail-Services.html
> maybe you could have a look at that, and see if it helps.
Yes, I am migrating my mail server and a working laptop to Guix.
>> But wouldn't it be better to do it the same way as debian does?Every
>> component lives in a separate package, and if I need some library I don't
>> have to install the giant package.
>>
>
> In guix packages can be split to multiple outputs. You can also define
> separate packages,
> but these are less common. Would multiple outputs make sense in this case?
> https://guix.gnu.org/manual/en/html_node/Packages-with-Multiple-Outputs.html
>>
>>
>> The problem I encountered is that dovecot has mail_plugin_dir property
>> which does not accept multiple folders. It means I have to put and install
>> new plugins in the very same directory with existing plugins. rpath is not
>> an option here. Even if a library knows where to load its dependencies,
>> dovecot doesn't aware of it.
>>
>>
>> Is there a way to have shared store folder? Debian overrides rpath to all
>> dovecot extensions and set it to /usr/dovecot/lib.
>>
>
> If dovecot follows symlinks on plugin resoltuion, then the service
> configuration
> could be extended by a plugins keyword, like it was for postgresql
> extensions,
> that sets up a symlink is a well known location to the store item of the
> package
> providing the plugin.
Thanks for the symlink tip! I am using guix on my laptop as a foreign
distr and was struggle with the path to the lib. I didn't know how to
get that folder. Thanks!
(string-append %current-profile "/lib/dovecot") fixed everything.
--
Alexey
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Dovecot + pigeonhole packaging
2019-08-30 19:46 ` Alexey Abramov
@ 2019-09-01 6:37 ` Gábor Boskovits
0 siblings, 0 replies; 4+ messages in thread
From: Gábor Boskovits @ 2019-09-01 6:37 UTC (permalink / raw)
To: Alexey Abramov; +Cc: help-guix
Glad to hear it!
Alexey Abramov <levenson@mmer.org> ezt írta (időpont: 2019. aug. 30., Pén
21:46):
> Gábor Boskovits <boskovits@gmail.com> writes:
>
> > Hello Alexey,
> >
> > Alexey Abramov <levenson@mmer.org> ezt írta (időpont: 2019. aug. 28.,
> Sze,
> > 22:30):
> >
> >> Hi guix,
> >>
> >>
> >> My system requires me to have dovecot and pigeonhole. So I packaged it.
> I
> >> created two none public packages and merged them into one big package.
> >>
> >
> > Is this on Guix System?
> > If yes, then guix system has a dovecot-service:
> > https://guix.gnu.org/manual/en/html_node/Mail-Services.html
> > maybe you could have a look at that, and see if it helps.
>
> Yes, I am migrating my mail server and a working laptop to Guix.
>
> >> But wouldn't it be better to do it the same way as debian does?Every
> >> component lives in a separate package, and if I need some library I
> don't
> >> have to install the giant package.
> >>
> >
> > In guix packages can be split to multiple outputs. You can also define
> > separate packages,
> > but these are less common. Would multiple outputs make sense in this
> case?
> >
> https://guix.gnu.org/manual/en/html_node/Packages-with-Multiple-Outputs.html
> >>
> >>
> >> The problem I encountered is that dovecot has mail_plugin_dir property
> >> which does not accept multiple folders. It means I have to put and
> install
> >> new plugins in the very same directory with existing plugins. rpath is
> not
> >> an option here. Even if a library knows where to load its dependencies,
> >> dovecot doesn't aware of it.
> >>
> >>
> >> Is there a way to have shared store folder? Debian overrides rpath to
> all
> >> dovecot extensions and set it to /usr/dovecot/lib.
> >>
> >
> > If dovecot follows symlinks on plugin resoltuion, then the service
> > configuration
> > could be extended by a plugins keyword, like it was for postgresql
> > extensions,
> > that sets up a symlink is a well known location to the store item of the
> > package
> > providing the plugin.
>
> Thanks for the symlink tip! I am using guix on my laptop as a foreign
> distr and was struggle with the path to the lib. I didn't know how to
> get that folder. Thanks!
>
> (string-append %current-profile "/lib/dovecot") fixed everything.
>
> --
> Alexey
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2019-09-01 6:38 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-08-28 17:11 Dovecot + pigeonhole packaging Alexey Abramov
2019-08-29 6:01 ` Gábor Boskovits
2019-08-30 19:46 ` Alexey Abramov
2019-09-01 6:37 ` Gábor Boskovits
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).