On Fri, Jun 13, 2025 at 9:21 PM Dominik 'Rathann' Mierzejewski via devel <devel@lists.fedoraproject.org> wrote: > > Hi! > > On Friday, 13 June 2025 at 18:21, Mikolaj Izdebski wrote: > > I'm excited to announce the preview availability of declarative Maven > > RPM builds in Fedora 43 -- a new approach to RPM packaging for > > Maven-based Java projects > [...] > > This feature is currently in preview. So far, a single package > > "plexus-cipher" has been converted to use declarative Maven builds. It > > serves as a working example and proof of concept. The spec file of > > plexus-cipher can be seen at > > https://src.fedoraproject.org/rpms/plexus-cipher/blob/rawhide/f/plexus-cipher.spec > > This is new... It looks really great. Thanks for making this happen. > > > More information can be found at upstream project at > > https://github.com/mizdebsk/dola > > Currently supported syntax for BuildOptions (subject to change) is > > documented at https://github.com/mizdebsk/dola/blob/master/SYNTAX.md > > The syntax looks a bit arcane and error-prone. Could you make it more > verbose and friendlier to those unfamiliar with Maven?
Agreed, this is one of two syntaxes that will be implemented. I intend to have a "consiste" and "verbose" syntaxes. The first one is quick to type for experienced packagers and easier to write a parser for, but looks cryptic. The second one is verbose and more human-readable, especially for less experienced packagers. Since both syntaxes describe the same data (not code!) it's possible to convert between them. For now only the consiste syntax is implemented, but I will design and implement the readable, verbose syntax soon. > E.g. using '/' to say "remove" is not intuitive for me. '-' would've > been more obvious. True, but '-' is more commonly used for generic options, such as -Dkey=val to define property, or -Pprofile to activate profile. Also the verbose syntax will likely use long options starting with double-dashes. > What do colon (:) and at (@) signs mean? What is "parent" or "mod"? What > are "profiles" in Maven options? None of this is explained, so it's > difficult to start using this if someone has no experience with Maven. Agreed, the syntax has to be better documented, not just by giving quick examples. Colon ':' is a standard character used to separate Maven coordinates. Modules, parent POMs and profiles are all concepts of Maven which should be understood by Java packagers. Thank you for feedback, this is exactly what I need to keep improving the project! -- Mikołaj > > Regards, > Dominik > -- > Fedora https://fedoraproject.org > Deep in the human unconscious is a pervasive need for a logical universe that > makes sense. But the real universe is always one step beyond logic. > -- from "The Sayings of Muad'Dib" by the Princess Irulan > -- > _______________________________________________ > devel mailing list -- devel@lists.fedoraproject.org > To unsubscribe send an email to devel-le...@lists.fedoraproject.org > Fedora Code of Conduct: > https://docs.fedoraproject.org/en-US/project/code-of-conduct/ > List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines > List Archives: > https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org > Do not reply to spam, report it: > https://pagure.io/fedora-infrastructure/new_issue -- _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue