LWN: Comments on "Konecny: Anaconda modularisation" https://lwn.net/Articles/725623/ This is a special feed containing comments posted to the individual LWN article titled "Konecny: Anaconda modularisation". en-us Wed, 08 Oct 2025 01:37:24 +0000 Wed, 08 Oct 2025 01:37:24 +0000 https://www.rssboard.org/rss-specification lwn@lwn.net Konecny: Anaconda modularisation https://lwn.net/Articles/725686/ https://lwn.net/Articles/725686/ Cyberax <div class="FormattedComment"> So, kinda like the BIND10 redesign only different?<br> <p> Splitting a system into multiple distributed modules requires really good justification and "they should be able to create a new user interface easily" is THE worst one. <br> <p> There are really no worse excuses.<br> <p> I'd managed development and refactoring of several large applications and most often attempts to preemptively split something into modules resulted in a mess. Too many hidden dependencies remained and then when I wanted to re-use the "common functionality" it usually required tweaks to the "common" layer and its consumer, complicated by leaky or incorrect abstractions.<br> <p> Successful refactorings usually started by creating almost-a-fork, writing new code and then merging it with existing code, extracting common functionality.<br> <p> </div> Sun, 18 Jun 2017 08:54:01 +0000 Konecny: Anaconda modularisation https://lwn.net/Articles/725675/ https://lwn.net/Articles/725675/ m4rtink <div class="FormattedComment"> (another Anaconda developer here)<br> <p> We still need to work out the finer details of how the DBUS API using addons should work, but an addon will likely run in its own process.<br> <p> Theoretically and addon might just do it's thing by using the public Anaconda DBUS API and the Anaconda core would not have to really care about it.<br> <p> In other cases it might make sense for addons to register with the Anaconda core, so that it knows about them and can behave accordingly.<br> </div> Sat, 17 Jun 2017 22:39:21 +0000 Konecny: Anaconda modularisation https://lwn.net/Articles/725665/ https://lwn.net/Articles/725665/ drag <div class="FormattedComment"> Dbus seems fine. Alternatives would be something like rabbitmq or some custom chatty protocol over local unix sockets. Each type of IPC has it's own type of 'overhead' and bad things. <br> <p> Dbus has the advantage that it is baked-in to the OS at this point and is available early in the boot process. <br> </div> Sat, 17 Jun 2017 18:17:29 +0000 Konecny: Anaconda modularisation https://lwn.net/Articles/725664/ https://lwn.net/Articles/725664/ HelloWorld <div class="FormattedComment"> You can write an extension in languages other than Python. It might be useful if you want to use some library written in another language. <br> </div> Sat, 17 Jun 2017 18:09:34 +0000 Konecny: Anaconda modularisation https://lwn.net/Articles/725655/ https://lwn.net/Articles/725655/ jhoblitt <div class="FormattedComment"> So every "addon" would need to be started as a separate process that registers with the anaconda core?<br> </div> Sat, 17 Jun 2017 16:33:21 +0000 Konecny: Anaconda modularisation https://lwn.net/Articles/725647/ https://lwn.net/Articles/725647/ juliank <div class="FormattedComment"> Doing all inter-module communication via a message bus seems like a lot of overhead, I'm not sure what the advantage here is.<br> </div> Sat, 17 Jun 2017 13:24:39 +0000