Ruby/Policy 2.0: Difference between revisions
< Ruby
No edit summary |
|||
Line 14: | Line 14: | ||
# The name of package depends on the repo containments and there is of three main types, so list below shows types and their according namings: | # The name of package depends on the repo containments and there is of three main types, so list below shows types and their according namings: | ||
## '''gem''': project contains one of several gems depending of one of the contained gems, like: [https://packages.altlinux.org/ru/sisyphus/srpms/gem-concurrent-ruby/specfiles concurrent-ruby], [https://packages.altlinux.org/ru/sisyphus/srpms/gem-train/specfiles train], have to be renamed with one, which begins with ''gem-'' prefix of shorest gem included in repo, with replacement '_', and '.' chars into '-', like name '''smart_proxy.one''' has to become '''gem-smart-proxy-one''' when packaged. | |||
## '''gemfile''': projects based on the ''Gemfile'' or ''Rakefile'', for example rails or sinatra based projects like: [https://packages.altlinux.org/ru/sisyphus/srpms/foreman/specfiles foreman], keep their names as is; | |||
## '''complex''': gem grouped projects, name of which can't be unambiguously inferred, like: [https://packages.altlinux.org/ru/sisyphus/srpms/ruby-gnome2/specfiles gnome2], keep their names as is; | |||
# All the build requires and conflicts should, except those that must be used for build, be closed under %check condition, and it required only for testing purposes; | # All the build requires and conflicts should, except those that must be used for build, be closed under %check condition, and it required only for testing purposes; | ||
# Placement of the ruby site, vendor or gem modules is defined by **rpm-ruby-macros** package, which is generated by **ruby**; | # Placement of the ruby site, vendor or gem modules is defined by **rpm-ruby-macros** package, which is generated by **ruby**; |
Revision as of 17:50, 12 December 2023
Ruby Policy
Rules for ruby module and application packages
- The name of package depends on the repo containments and there is of three main types, so list below shows types and their according namings:
- gem: project contains one of several gems depending of one of the contained gems, like: concurrent-ruby, train, have to be renamed with one, which begins with gem- prefix of shorest gem included in repo, with replacement '_', and '.' chars into '-', like name smart_proxy.one has to become gem-smart-proxy-one when packaged.
- gemfile: projects based on the Gemfile or Rakefile, for example rails or sinatra based projects like: foreman, keep their names as is;
- complex: gem grouped projects, name of which can't be unambiguously inferred, like: gnome2, keep their names as is;
- All the build requires and conflicts should, except those that must be used for build, be closed under %check condition, and it required only for testing purposes;
- Placement of the ruby site, vendor or gem modules is defined by **rpm-ruby-macros** package, which is generated by **ruby**;