As a matter of fact I use the virtual plugin to achieve what I want. I create dovecot-virtual configuration files. But if I understand you correctly, your approach is a system-wide configuration. Labels are per-user and dynamic by definition. On Mon, Oct 2, 2017 at 8:24 AM, Aki Tuomi <aki.tuomi at dovecot.fi> wrote:> > > On 01.10.2017 19:13, Daniele Ricci wrote: >> Hello list, >> I'm new here and since I've been working on a plugin lately I though >> I'd post it here. >> >> It's GPL licensed, hosted on GitHub: >> https://github.com/daniele-athome/dovecot-virtual-keywords-plugin >> >> I've been trying to find a replacement for Gmail and I already have my >> own mailserver. What I'm missing very much is labels. Since folders >> don't really match labels, I had to implement something that at least >> resembles them. >> >> I decided to use IMAP keywords since it's probably the closest thing to labels. >> The README in the repository pretty much describes what this plugin >> do, but basically it creates virtual mailboxes with predefined rules >> to match for labeled messages. >> >> E.g. if you set a "Urgent" keyword on any message, the plugin will >> create a "Virtual/Urgent" virtual mailbox that will have the message >> you just labeled. >> >> I'm a bit out of practice on C but I believe I managed. I've tested >> the plugin locally but I've not deployed it on my production mail >> server yet. I'd like to hear your opinions (reviews and comments are >> very welcome) and possibly find other people interested in this >> approach to discuss about it. >> >> Thanks! > You should be able to do this with virtual plugin itself, like > > /etc/dovecot/virtual/Urgent: > * > KEYWORD Urgent > > Aki-- Daniele
You can actually create per-user virtual folders too. They don't need to be global. But I see your plugin does automation, and it could write the virtual file under user-writable location. Aki On 02.10.2017 12:14, Daniele Ricci wrote:> As a matter of fact I use the virtual plugin to achieve what I want. I > create dovecot-virtual configuration files. > But if I understand you correctly, your approach is a system-wide > configuration. Labels are per-user and dynamic by definition. > > > > On Mon, Oct 2, 2017 at 8:24 AM, Aki Tuomi <aki.tuomi at dovecot.fi> wrote: >> >> On 01.10.2017 19:13, Daniele Ricci wrote: >>> Hello list, >>> I'm new here and since I've been working on a plugin lately I though >>> I'd post it here. >>> >>> It's GPL licensed, hosted on GitHub: >>> https://github.com/daniele-athome/dovecot-virtual-keywords-plugin >>> >>> I've been trying to find a replacement for Gmail and I already have my >>> own mailserver. What I'm missing very much is labels. Since folders >>> don't really match labels, I had to implement something that at least >>> resembles them. >>> >>> I decided to use IMAP keywords since it's probably the closest thing to labels. >>> The README in the repository pretty much describes what this plugin >>> do, but basically it creates virtual mailboxes with predefined rules >>> to match for labeled messages. >>> >>> E.g. if you set a "Urgent" keyword on any message, the plugin will >>> create a "Virtual/Urgent" virtual mailbox that will have the message >>> you just labeled. >>> >>> I'm a bit out of practice on C but I believe I managed. I've tested >>> the plugin locally but I've not deployed it on my production mail >>> server yet. I'd like to hear your opinions (reviews and comments are >>> very welcome) and possibly find other people interested in this >>> approach to discuss about it. >>> >>> Thanks! >> You should be able to do this with virtual plugin itself, like >> >> /etc/dovecot/virtual/Urgent: >> * >> KEYWORD Urgent >> >> Aki > >
Yes, automation is the main point of the plugin :-) The problem is that creating virtual folders involves writing on the file system directly, which you can't do through IMAP alone. So I had to work within the mail server. What I really wanted to do was to create a storage driver (it seemed more suitable to the plugin scope), but that was much more complex and it will probably come in a future version. I'm also going to extend an existing Roundcube plugin for a more complete keyword handling. On Mon, Oct 2, 2017 at 11:17 AM, Aki Tuomi <aki.tuomi at dovecot.fi> wrote:> You can actually create per-user virtual folders too. They don't need to > be global. But I see your plugin does automation, and it could write the > virtual file under user-writable location. > > Aki > > > On 02.10.2017 12:14, Daniele Ricci wrote: >> As a matter of fact I use the virtual plugin to achieve what I want. I >> create dovecot-virtual configuration files. >> But if I understand you correctly, your approach is a system-wide >> configuration. Labels are per-user and dynamic by definition. >> >> >> >> On Mon, Oct 2, 2017 at 8:24 AM, Aki Tuomi <aki.tuomi at dovecot.fi> wrote: >>> >>> On 01.10.2017 19:13, Daniele Ricci wrote: >>>> Hello list, >>>> I'm new here and since I've been working on a plugin lately I though >>>> I'd post it here. >>>> >>>> It's GPL licensed, hosted on GitHub: >>>> https://github.com/daniele-athome/dovecot-virtual-keywords-plugin >>>> >>>> I've been trying to find a replacement for Gmail and I already have my >>>> own mailserver. What I'm missing very much is labels. Since folders >>>> don't really match labels, I had to implement something that at least >>>> resembles them. >>>> >>>> I decided to use IMAP keywords since it's probably the closest thing to labels. >>>> The README in the repository pretty much describes what this plugin >>>> do, but basically it creates virtual mailboxes with predefined rules >>>> to match for labeled messages. >>>> >>>> E.g. if you set a "Urgent" keyword on any message, the plugin will >>>> create a "Virtual/Urgent" virtual mailbox that will have the message >>>> you just labeled. >>>> >>>> I'm a bit out of practice on C but I believe I managed. I've tested >>>> the plugin locally but I've not deployed it on my production mail >>>> server yet. I'd like to hear your opinions (reviews and comments are >>>> very welcome) and possibly find other people interested in this >>>> approach to discuss about it. >>>> >>>> Thanks! >>> You should be able to do this with virtual plugin itself, like >>> >>> /etc/dovecot/virtual/Urgent: >>> * >>> KEYWORD Urgent >>> >>> Aki >> >> >-- Daniele