aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Fechner <mfechner@FreeBSD.org>2025-05-17 12:24:41 +0000
committerMatthias Fechner <mfechner@FreeBSD.org>2025-05-19 13:35:44 +0000
commit2ee21239d196d14459a6efcf6d91446e12efb24a (patch)
treea1bca3a2b3b313d975716b2bf8317d7cf9584f8b
parentb5aff04d74ef6c9fc44cda6d2857b79468c519e0 (diff)
www/gitlab: new ports required for 18.0.0
-rw-r--r--databases/Makefile5
-rw-r--r--databases/rubygem-activemodel-gitlab/Makefile24
-rw-r--r--databases/rubygem-activemodel-gitlab/distinfo3
-rw-r--r--databases/rubygem-activemodel-gitlab/pkg-descr7
-rw-r--r--databases/rubygem-activerecord-gitlab/Makefile26
-rw-r--r--databases/rubygem-activerecord-gitlab/distinfo3
-rw-r--r--databases/rubygem-activerecord-gitlab/pkg-descr11
-rw-r--r--databases/rubygem-flipper-active_record-rails-gitlab/Makefile20
-rw-r--r--databases/rubygem-flipper-active_record-rails-gitlab/distinfo3
-rw-r--r--databases/rubygem-flipper-active_record-rails-gitlab/pkg-descr1
-rw-r--r--databases/rubygem-globalid-rails-gitlab/Makefile20
-rw-r--r--databases/rubygem-globalid-rails-gitlab/distinfo3
-rw-r--r--databases/rubygem-globalid-rails-gitlab/pkg-descr1
-rw-r--r--databases/rubygem-redis-actionpack-rails-gitlab/Makefile22
-rw-r--r--databases/rubygem-redis-actionpack-rails-gitlab/distinfo3
-rw-r--r--databases/rubygem-redis-actionpack-rails-gitlab/pkg-descr1
-rw-r--r--devel/Makefile12
-rw-r--r--devel/rubygem-actionview-gitlab/Makefile30
-rw-r--r--devel/rubygem-actionview-gitlab/distinfo3
-rw-r--r--devel/rubygem-actionview-gitlab/pkg-descr4
-rw-r--r--devel/rubygem-activejob-gitlab/Makefile28
-rw-r--r--devel/rubygem-activejob-gitlab/distinfo3
-rw-r--r--devel/rubygem-activejob-gitlab/pkg-descr16
-rw-r--r--devel/rubygem-activesupport-gitlab/Makefile37
-rw-r--r--devel/rubygem-activesupport-gitlab/distinfo3
-rw-r--r--devel/rubygem-activesupport-gitlab/pkg-descr4
-rw-r--r--devel/rubygem-devise-rails-gitlab/Makefile26
-rw-r--r--devel/rubygem-devise-rails-gitlab/distinfo3
-rw-r--r--devel/rubygem-devise-rails-gitlab/pkg-descr5
-rw-r--r--devel/rubygem-flipper-active_support_cache_store-rails-gitlab/Makefile20
-rw-r--r--devel/rubygem-flipper-active_support_cache_store-rails-gitlab/distinfo3
-rw-r--r--devel/rubygem-flipper-active_support_cache_store-rails-gitlab/pkg-descr1
-rw-r--r--devel/rubygem-health_check-rails-gitlab/Makefile22
-rw-r--r--devel/rubygem-health_check-rails-gitlab/distinfo3
-rw-r--r--devel/rubygem-health_check-rails-gitlab/pkg-descr1
-rw-r--r--devel/rubygem-irb-gitlab/Makefile28
-rw-r--r--devel/rubygem-irb-gitlab/distinfo3
-rw-r--r--devel/rubygem-irb-gitlab/pkg-descr2
-rw-r--r--devel/rubygem-peek-rails-gitlab/Makefile20
-rw-r--r--devel/rubygem-peek-rails-gitlab/distinfo3
-rw-r--r--devel/rubygem-peek-rails-gitlab/pkg-descr14
-rw-r--r--devel/rubygem-rails-i18n-rails-gitlab/Makefile21
-rw-r--r--devel/rubygem-rails-i18n-rails-gitlab/distinfo3
-rw-r--r--devel/rubygem-rails-i18n-rails-gitlab/pkg-descr4
-rw-r--r--devel/rubygem-rdoc-gitlab/Makefile29
-rw-r--r--devel/rubygem-rdoc-gitlab/distinfo3
-rw-r--r--devel/rubygem-rdoc-gitlab/pkg-descr3
-rw-r--r--devel/rubygem-sidekiq-cron-rails-gitlab/Makefile22
-rw-r--r--devel/rubygem-sidekiq-cron-rails-gitlab/distinfo3
-rw-r--r--devel/rubygem-sidekiq-cron-rails-gitlab/pkg-descr9
-rw-r--r--devel/rubygem-sprockets-rails-rails-gitlab/Makefile22
-rw-r--r--devel/rubygem-sprockets-rails-rails-gitlab/distinfo3
-rw-r--r--devel/rubygem-sprockets-rails-rails-gitlab/pkg-descr1
-rw-r--r--mail/Makefile3
-rw-r--r--mail/rubygem-actionmailbox-gitlab/Makefile32
-rw-r--r--mail/rubygem-actionmailbox-gitlab/distinfo3
-rw-r--r--mail/rubygem-actionmailbox-gitlab/pkg-descr12
-rw-r--r--mail/rubygem-actionmailer-gitlab/Makefile29
-rw-r--r--mail/rubygem-actionmailer-gitlab/distinfo3
-rw-r--r--mail/rubygem-actionmailer-gitlab/pkg-descr12
-rw-r--r--mail/rubygem-premailer-rails-rails-gitlab/Makefile22
-rw-r--r--mail/rubygem-premailer-rails-rails-gitlab/distinfo3
-rw-r--r--mail/rubygem-premailer-rails-rails-gitlab/pkg-descr18
-rw-r--r--net/Makefile1
-rw-r--r--net/rubygem-activestorage-gitlab/Makefile28
-rw-r--r--net/rubygem-activestorage-gitlab/distinfo3
-rw-r--r--net/rubygem-activestorage-gitlab/pkg-descr11
-rw-r--r--security/Makefile1
-rw-r--r--security/rubygem-doorkeeper-rails-gitlab/Makefile22
-rw-r--r--security/rubygem-doorkeeper-rails-gitlab/distinfo3
-rw-r--r--security/rubygem-doorkeeper-rails-gitlab/pkg-descr2
-rw-r--r--textproc/Makefile2
-rw-r--r--textproc/rubygem-actiontext-gitlab/Makefile29
-rw-r--r--textproc/rubygem-actiontext-gitlab/distinfo3
-rw-r--r--textproc/rubygem-actiontext-gitlab/pkg-descr7
-rw-r--r--textproc/rubygem-rails-dom-testing-rails-gitlab/Makefile22
-rw-r--r--textproc/rubygem-rails-dom-testing-rails-gitlab/distinfo3
-rw-r--r--textproc/rubygem-rails-dom-testing-rails-gitlab/pkg-descr6
-rw-r--r--www/Makefile12
-rw-r--r--www/gitlab/Makefile.common3
-rw-r--r--www/rubygem-actioncable-gitlab/Makefile28
-rw-r--r--www/rubygem-actioncable-gitlab/distinfo3
-rw-r--r--www/rubygem-actioncable-gitlab/pkg-descr7
-rw-r--r--www/rubygem-actionpack-gitlab/Makefile32
-rw-r--r--www/rubygem-actionpack-gitlab/distinfo3
-rw-r--r--www/rubygem-actionpack-gitlab/pkg-descr19
-rw-r--r--www/rubygem-cssbundling-rails-rails-gitlab/Makefile20
-rw-r--r--www/rubygem-cssbundling-rails-rails-gitlab/distinfo3
-rw-r--r--www/rubygem-cssbundling-rails-rails-gitlab/pkg-descr12
-rw-r--r--www/rubygem-gon-rails-gitlab/Makefile24
-rw-r--r--www/rubygem-gon-rails-gitlab/distinfo3
-rw-r--r--www/rubygem-gon-rails-gitlab/pkg-descr2
-rw-r--r--www/rubygem-kaminari-actionview-rails-gitlab/Makefile21
-rw-r--r--www/rubygem-kaminari-actionview-rails-gitlab/distinfo3
-rw-r--r--www/rubygem-kaminari-actionview-rails-gitlab/pkg-descr1
-rw-r--r--www/rubygem-kaminari-activerecord-rails-gitlab/Makefile21
-rw-r--r--www/rubygem-kaminari-activerecord-rails-gitlab/distinfo3
-rw-r--r--www/rubygem-kaminari-activerecord-rails-gitlab/pkg-descr1
-rw-r--r--www/rubygem-kaminari-rails-gitlab/Makefile25
-rw-r--r--www/rubygem-kaminari-rails-gitlab/distinfo3
-rw-r--r--www/rubygem-kaminari-rails-gitlab/pkg-descr2
-rw-r--r--www/rubygem-lograge-rails-gitlab/Makefile22
-rw-r--r--www/rubygem-lograge-rails-gitlab/distinfo3
-rw-r--r--www/rubygem-lograge-rails-gitlab/pkg-descr6
-rw-r--r--www/rubygem-rails-gitlab/Makefile49
-rw-r--r--www/rubygem-rails-gitlab/distinfo3
-rw-r--r--www/rubygem-rails-gitlab/pkg-descr23
-rw-r--r--www/rubygem-railties-gitlab/Makefile36
-rw-r--r--www/rubygem-railties-gitlab/distinfo3
-rw-r--r--www/rubygem-railties-gitlab/pkg-descr4
-rw-r--r--www/rubygem-redis-rack-gitlab/Makefile25
-rw-r--r--www/rubygem-redis-rack-gitlab/distinfo3
-rw-r--r--www/rubygem-redis-rack-gitlab/pkg-descr1
-rw-r--r--www/rubygem-responders-rails-gitlab/Makefile21
-rw-r--r--www/rubygem-responders-rails-gitlab/distinfo3
-rw-r--r--www/rubygem-responders-rails-gitlab/pkg-descr1
116 files changed, 1304 insertions, 0 deletions
diff --git a/databases/Makefile b/databases/Makefile
index 55cca30e9738..8096fff6ce47 100644
--- a/databases/Makefile
+++ b/databases/Makefile
@@ -890,6 +890,7 @@
SUBDIR += ruby-xapian
SUBDIR += rubygem-active_model_serializers
SUBDIR += rubygem-active_record_query_trace
+ SUBDIR += rubygem-activemodel-gitlab
SUBDIR += rubygem-activemodel-serializers-xml
SUBDIR += rubygem-activemodel4
SUBDIR += rubygem-activemodel5
@@ -902,6 +903,7 @@
SUBDIR += rubygem-activemodel72
SUBDIR += rubygem-activemodel80
SUBDIR += rubygem-activerecord-explain-analyze
+ SUBDIR += rubygem-activerecord-gitlab
SUBDIR += rubygem-activerecord-import
SUBDIR += rubygem-activerecord-jdbc-adapter
SUBDIR += rubygem-activerecord-jdbcmysql-adapter
@@ -963,9 +965,11 @@
SUBDIR += rubygem-fabrication
SUBDIR += rubygem-familia
SUBDIR += rubygem-flipper-active_record
+ SUBDIR += rubygem-flipper-active_record-rails-gitlab
SUBDIR += rubygem-flipper-active_record-rails70
SUBDIR += rubygem-gdbm
SUBDIR += rubygem-globalid
+ SUBDIR += rubygem-globalid-rails-gitlab
SUBDIR += rubygem-globalid-rails5
SUBDIR += rubygem-globalid-rails50
SUBDIR += rubygem-globalid-rails52
@@ -1011,6 +1015,7 @@
SUBDIR += rubygem-red-parquet
SUBDIR += rubygem-redis
SUBDIR += rubygem-redis-actionpack
+ SUBDIR += rubygem-redis-actionpack-rails-gitlab
SUBDIR += rubygem-redis-actionpack-rails5
SUBDIR += rubygem-redis-actionpack-rails50
SUBDIR += rubygem-redis-actionpack-rails52
diff --git a/databases/rubygem-activemodel-gitlab/Makefile b/databases/rubygem-activemodel-gitlab/Makefile
new file mode 100644
index 000000000000..52a7f4f11de6
--- /dev/null
+++ b/databases/rubygem-activemodel-gitlab/Makefile
@@ -0,0 +1,24 @@
+PORTNAME= activemodel
+PORTVERSION= ${RAILS_VERSION}
+CATEGORIES= databases rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Toolkit for building modeling frameworks like Active Record
+WWW= https://github.com/rails/rails/tree/main/activemodel \
+ https://rubyonrails.org/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-activesupport-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activesupport-gitlab
+
+USES= gem
+
+NO_ARCH= yes
+
+PORTSCOUT= limit:^7\.1\.
+
+.include "${.CURDIR}/../../www/gitlab/Makefile.common"
+.include <bsd.port.mk>
diff --git a/databases/rubygem-activemodel-gitlab/distinfo b/databases/rubygem-activemodel-gitlab/distinfo
new file mode 100644
index 000000000000..e4865ee9c810
--- /dev/null
+++ b/databases/rubygem-activemodel-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1734888804
+SHA256 (rubygem/activemodel-7.1.5.1.gem) = 74727466854a7fbdfe8f2702ca3112b23877500d4926bf7e02e921ad542191f1
+SIZE (rubygem/activemodel-7.1.5.1.gem) = 69632
diff --git a/databases/rubygem-activemodel-gitlab/pkg-descr b/databases/rubygem-activemodel-gitlab/pkg-descr
new file mode 100644
index 000000000000..9e0e982e3352
--- /dev/null
+++ b/databases/rubygem-activemodel-gitlab/pkg-descr
@@ -0,0 +1,7 @@
+Active Model provides a known set of interfaces for usage in model classes. They
+allow for Action Pack helpers to interact with non-Active Record models, for
+example. Active Model also helps with building custom ORMs for use outside of
+the Rails framework.
+
+Active Model provides a default module that implements the basic API required to
+integrate with Action Pack out of the box: ActiveModel::API.
diff --git a/databases/rubygem-activerecord-gitlab/Makefile b/databases/rubygem-activerecord-gitlab/Makefile
new file mode 100644
index 000000000000..182cb62b8dd2
--- /dev/null
+++ b/databases/rubygem-activerecord-gitlab/Makefile
@@ -0,0 +1,26 @@
+PORTNAME= activerecord
+PORTVERSION= ${RAILS_VERSION}
+CATEGORIES= databases rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Object-relational mapping layer for Rails MVC Framework
+WWW= https://github.com/rails/rails/tree/main/activerecord \
+ https://rubyonrails.org/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-activemodel-gitlab>=${PORTVERSION}<${PORTVERSION}_99:databases/rubygem-activemodel-gitlab \
+ rubygem-activesupport-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activesupport-gitlab \
+ rubygem-timeout>=0.4.0:devel/rubygem-timeout
+
+USES= gem
+
+NO_ARCH= yes
+
+PORTSCOUT= limit:^7\.1\.
+
+.include "${.CURDIR}/../../www/gitlab/Makefile.common"
+.include <bsd.port.mk>
diff --git a/databases/rubygem-activerecord-gitlab/distinfo b/databases/rubygem-activerecord-gitlab/distinfo
new file mode 100644
index 000000000000..d5e0a1e9d921
--- /dev/null
+++ b/databases/rubygem-activerecord-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1734888806
+SHA256 (rubygem/activerecord-7.1.5.1.gem) = f40ad1609bf33b9ba5bdc4e16d80a77b1517153234ceb413d31d635d7b91f1e3
+SIZE (rubygem/activerecord-7.1.5.1.gem) = 548352
diff --git a/databases/rubygem-activerecord-gitlab/pkg-descr b/databases/rubygem-activerecord-gitlab/pkg-descr
new file mode 100644
index 000000000000..2ec976f87967
--- /dev/null
+++ b/databases/rubygem-activerecord-gitlab/pkg-descr
@@ -0,0 +1,11 @@
+Active Record connects classes to relational database tables to establish an
+almost zero-configuration persistence layer for applications. The library
+provides a base class that, when subclassed, sets up a mapping between the new
+class and an existing table in the database. In the context of an application,
+these classes are commonly referred to as models. Models can also be connected
+to other models; this is done by defining associations.
+
+Active Record relies heavily on naming in that it uses class and association
+names to establish mappings between respective database tables and foreign key
+columns. Although these mappings can be defined explicitly, it's recommended to
+follow naming conventions, especially when getting started with the library.
diff --git a/databases/rubygem-flipper-active_record-rails-gitlab/Makefile b/databases/rubygem-flipper-active_record-rails-gitlab/Makefile
new file mode 100644
index 000000000000..85162f9791b0
--- /dev/null
+++ b/databases/rubygem-flipper-active_record-rails-gitlab/Makefile
@@ -0,0 +1,20 @@
+PORTNAME= flipper-active_record
+PORTVERSION= 0.28.3
+CATEGORIES= databases rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= ruby@FreeBSD.org
+COMMENT= ActiveRecord adapter for Flipper
+WWW= https://github.com/jnunemaker/flipper
+
+LICENSE= MIT
+
+RUN_DEPENDS= rubygem-activerecord-gitlab>=4.2<8:databases/rubygem-activerecord-gitlab \
+ rubygem-flipper-gitlab>=${PORTVERSION}<0.29:devel/rubygem-flipper-gitlab
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/databases/rubygem-flipper-active_record-rails-gitlab/distinfo b/databases/rubygem-flipper-active_record-rails-gitlab/distinfo
new file mode 100644
index 000000000000..b2946f771c56
--- /dev/null
+++ b/databases/rubygem-flipper-active_record-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1742395937
+SHA256 (rubygem/flipper-active_record-0.28.3.gem) = c6a91c265da8062b75cf575708e325b931e248e5f81582fea8c4cdf461ad1920
+SIZE (rubygem/flipper-active_record-0.28.3.gem) = 10240
diff --git a/databases/rubygem-flipper-active_record-rails-gitlab/pkg-descr b/databases/rubygem-flipper-active_record-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..635d5a774c49
--- /dev/null
+++ b/databases/rubygem-flipper-active_record-rails-gitlab/pkg-descr
@@ -0,0 +1 @@
+Flipper ActiveRecord is an ActiveRecord adapter for Flipper.
diff --git a/databases/rubygem-globalid-rails-gitlab/Makefile b/databases/rubygem-globalid-rails-gitlab/Makefile
new file mode 100644
index 000000000000..d2d7830a5099
--- /dev/null
+++ b/databases/rubygem-globalid-rails-gitlab/Makefile
@@ -0,0 +1,20 @@
+PORTNAME= globalid
+PORTVERSION= 1.2.1
+CATEGORIES= databases rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= URIs for your models makes it easy to pass references around
+WWW= https://github.com/rails/globalid
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-activesupport-gitlab>=6.1:devel/rubygem-activesupport-gitlab
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/databases/rubygem-globalid-rails-gitlab/distinfo b/databases/rubygem-globalid-rails-gitlab/distinfo
new file mode 100644
index 000000000000..f25598c9d396
--- /dev/null
+++ b/databases/rubygem-globalid-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1697330208
+SHA256 (rubygem/globalid-1.2.1.gem) = 70bf76711871f843dbba72beb8613229a49429d1866828476f9c9d6ccc327ce9
+SIZE (rubygem/globalid-1.2.1.gem) = 14848
diff --git a/databases/rubygem-globalid-rails-gitlab/pkg-descr b/databases/rubygem-globalid-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..09672db6bc67
--- /dev/null
+++ b/databases/rubygem-globalid-rails-gitlab/pkg-descr
@@ -0,0 +1 @@
+URIs for your models makes it easy to pass references around.
diff --git a/databases/rubygem-redis-actionpack-rails-gitlab/Makefile b/databases/rubygem-redis-actionpack-rails-gitlab/Makefile
new file mode 100644
index 000000000000..98ca3d2728bd
--- /dev/null
+++ b/databases/rubygem-redis-actionpack-rails-gitlab/Makefile
@@ -0,0 +1,22 @@
+PORTNAME= redis-actionpack
+PORTVERSION= 5.5.0
+CATEGORIES= databases rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= ruby@FreeBSD.org
+COMMENT= Redis session store for ActionPack
+WWW= https://redis-store.org/redis-actionpack/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-actionpack-gitlab>=5:www/rubygem-actionpack-gitlab \
+ rubygem-redis-rack-gitlab>=2.1.0<4:www/rubygem-redis-rack-gitlab \
+ rubygem-redis-store>=1.1.0<2:devel/rubygem-redis-store
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/databases/rubygem-redis-actionpack-rails-gitlab/distinfo b/databases/rubygem-redis-actionpack-rails-gitlab/distinfo
new file mode 100644
index 000000000000..e74b30ddb543
--- /dev/null
+++ b/databases/rubygem-redis-actionpack-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1734501996
+SHA256 (rubygem/redis-actionpack-5.5.0.gem) = dc0570b78c14ec62b35c17b97fab778ee5986bc55e695bfb6826488088693311
+SIZE (rubygem/redis-actionpack-5.5.0.gem) = 14848
diff --git a/databases/rubygem-redis-actionpack-rails-gitlab/pkg-descr b/databases/rubygem-redis-actionpack-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..ebcad6a52a5c
--- /dev/null
+++ b/databases/rubygem-redis-actionpack-rails-gitlab/pkg-descr
@@ -0,0 +1 @@
+Redis session store for ActionPack
diff --git a/devel/Makefile b/devel/Makefile
index ecbe7c24dc9f..b4ec7c6194e4 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -6427,6 +6427,7 @@
SUBDIR += rubygem-abstract
SUBDIR += rubygem-actionpack-action_caching
SUBDIR += rubygem-actionpack-page_caching
+ SUBDIR += rubygem-actionview-gitlab
SUBDIR += rubygem-actionview4
SUBDIR += rubygem-actionview5
SUBDIR += rubygem-actionview50
@@ -6439,6 +6440,7 @@
SUBDIR += rubygem-actionview80
SUBDIR += rubygem-active_hash
SUBDIR += rubygem-active_scaffold
+ SUBDIR += rubygem-activejob-gitlab
SUBDIR += rubygem-activejob4
SUBDIR += rubygem-activejob5
SUBDIR += rubygem-activejob50
@@ -6451,6 +6453,7 @@
SUBDIR += rubygem-activejob80
SUBDIR += rubygem-activemessaging
SUBDIR += rubygem-activerecord-deprecated_finders
+ SUBDIR += rubygem-activesupport-gitlab
SUBDIR += rubygem-activesupport4
SUBDIR += rubygem-activesupport5
SUBDIR += rubygem-activesupport50
@@ -7207,6 +7210,7 @@
SUBDIR += rubygem-device_detector
SUBDIR += rubygem-devise
SUBDIR += rubygem-devise-pwned_password
+ SUBDIR += rubygem-devise-rails-gitlab
SUBDIR += rubygem-devise-rails5
SUBDIR += rubygem-devise-rails52
SUBDIR += rubygem-devise-rails60
@@ -7291,6 +7295,7 @@
SUBDIR += rubygem-flexmock
SUBDIR += rubygem-flipper
SUBDIR += rubygem-flipper-active_support_cache_store
+ SUBDIR += rubygem-flipper-active_support_cache_store-rails-gitlab
SUBDIR += rubygem-flipper-active_support_cache_store-rails70
SUBDIR += rubygem-flipper-gitlab
SUBDIR += rubygem-flipper-ui
@@ -7430,6 +7435,7 @@
SUBDIR += rubygem-hashie-forbidden_attributes
SUBDIR += rubygem-hashie4
SUBDIR += rubygem-health_check
+ SUBDIR += rubygem-health_check-rails-gitlab
SUBDIR += rubygem-health_check-rails70
SUBDIR += rubygem-heapy
SUBDIR += rubygem-highline
@@ -7466,6 +7472,7 @@
SUBDIR += rubygem-iostruct
SUBDIR += rubygem-ipynbdiff
SUBDIR += rubygem-irb
+ SUBDIR += rubygem-irb-gitlab
SUBDIR += rubygem-iso8601
SUBDIR += rubygem-jaeger-client
SUBDIR += rubygem-jammit
@@ -7684,6 +7691,7 @@
SUBDIR += rubygem-peek-gc-rails52
SUBDIR += rubygem-peek-host
SUBDIR += rubygem-peek-performance_bar
+ SUBDIR += rubygem-peek-rails-gitlab
SUBDIR += rubygem-peek-rails4
SUBDIR += rubygem-peek-rails52
SUBDIR += rubygem-peek-rails60
@@ -7738,6 +7746,7 @@
SUBDIR += rubygem-rails-deprecated_sanitizer
SUBDIR += rubygem-rails-deprecated_sanitizer-rails5
SUBDIR += rubygem-rails-deprecated_sanitizer-rails50
+ SUBDIR += rubygem-rails-i18n-rails-gitlab
SUBDIR += rubygem-rails-i18n-rails5
SUBDIR += rubygem-rails-i18n-rails50
SUBDIR += rubygem-rails-i18n-rails52
@@ -7764,6 +7773,7 @@
SUBDIR += rubygem-rbtrace
SUBDIR += rubygem-rbtree
SUBDIR += rubygem-rdoc
+ SUBDIR += rubygem-rdoc-gitlab
SUBDIR += rubygem-re2
SUBDIR += rubygem-react-rails
SUBDIR += rubygem-react-rails-rails5
@@ -7883,6 +7893,7 @@
SUBDIR += rubygem-sidekiq
SUBDIR += rubygem-sidekiq-bulk
SUBDIR += rubygem-sidekiq-cron
+ SUBDIR += rubygem-sidekiq-cron-rails-gitlab
SUBDIR += rubygem-sidekiq-cron-rails70
SUBDIR += rubygem-sidekiq-gitlab
SUBDIR += rubygem-sidekiq-scheduler
@@ -7917,6 +7928,7 @@
SUBDIR += rubygem-sprockets
SUBDIR += rubygem-sprockets-es6
SUBDIR += rubygem-sprockets-helpers
+ SUBDIR += rubygem-sprockets-rails-rails-gitlab
SUBDIR += rubygem-sprockets-rails-rails4
SUBDIR += rubygem-sprockets-rails-rails5
SUBDIR += rubygem-sprockets-rails-rails50
diff --git a/devel/rubygem-actionview-gitlab/Makefile b/devel/rubygem-actionview-gitlab/Makefile
new file mode 100644
index 000000000000..992e2ceab740
--- /dev/null
+++ b/devel/rubygem-actionview-gitlab/Makefile
@@ -0,0 +1,30 @@
+PORTNAME= actionview
+PORTVERSION= ${RAILS_VERSION}
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Simple, battle-tested conventions and helpers for building web pages
+WWW= https://github.com/rails/rails/tree/main/actionview \
+ https://rubyonrails.org/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-activesupport-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activesupport-gitlab \
+ rubygem-builder>=3.1<4:devel/rubygem-builder \
+ rubygem-erubi>=1.11<2:www/rubygem-erubi \
+ rubygem-rails-dom-testing-rails-gitlab>=2.2<3:textproc/rubygem-rails-dom-testing-rails-gitlab \
+ rubygem-rails-html-sanitizer>=1.6<2:textproc/rubygem-rails-html-sanitizer
+
+USES= cpe gem
+
+NO_ARCH= yes
+
+CPE_VENDOR= rubyonrails
+
+PORTSCOUT= limit:^7\.1\.
+
+.include "${.CURDIR}/../../www/gitlab/Makefile.common"
+.include <bsd.port.mk>
diff --git a/devel/rubygem-actionview-gitlab/distinfo b/devel/rubygem-actionview-gitlab/distinfo
new file mode 100644
index 000000000000..89237c9aeba2
--- /dev/null
+++ b/devel/rubygem-actionview-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1734888808
+SHA256 (rubygem/actionview-7.1.5.1.gem) = 8c559a213501798e29b50b5341a643a70bbf6fa0aa2abaf571d0efc59dc4f6aa
+SIZE (rubygem/actionview-7.1.5.1.gem) = 188416
diff --git a/devel/rubygem-actionview-gitlab/pkg-descr b/devel/rubygem-actionview-gitlab/pkg-descr
new file mode 100644
index 000000000000..904615b292ae
--- /dev/null
+++ b/devel/rubygem-actionview-gitlab/pkg-descr
@@ -0,0 +1,4 @@
+Action View is a framework for handling view template lookup and rendering, and
+provides view helpers that assist when building HTML forms, Atom feeds and more.
+Template formats that Action View handles are ERB (embedded Ruby, typically used
+to inline short Ruby snippets inside HTML), and XML Builder.
diff --git a/devel/rubygem-activejob-gitlab/Makefile b/devel/rubygem-activejob-gitlab/Makefile
new file mode 100644
index 000000000000..e7d9e5c7550f
--- /dev/null
+++ b/devel/rubygem-activejob-gitlab/Makefile
@@ -0,0 +1,28 @@
+PORTNAME= activejob
+PORTVERSION= ${RAILS_VERSION}
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Declare job classes that can be run by a variety of queuing backends
+WWW= https://github.com/rails/rails/tree/main/activejob \
+ https://rubyonrails.org/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-activesupport-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activesupport-gitlab \
+ rubygem-globalid-rails-gitlab>=0.3.6:databases/rubygem-globalid-rails-gitlab
+
+USES= cpe gem
+
+NO_ARCH= yes
+
+CPE_VENDOR= rubyonrails
+CPE_PRODUCT= active_job
+
+PORTSCOUT= limit:^7\.1\.
+
+.include "${.CURDIR}/../../www/gitlab/Makefile.common"
+.include <bsd.port.mk>
diff --git a/devel/rubygem-activejob-gitlab/distinfo b/devel/rubygem-activejob-gitlab/distinfo
new file mode 100644
index 000000000000..dccec58750c5
--- /dev/null
+++ b/devel/rubygem-activejob-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1734888810
+SHA256 (rubygem/activejob-7.1.5.1.gem) = 7633376c857f4c491d06b5a7f5d86d9f07afc595398354a3f1abe80eb7e35767
+SIZE (rubygem/activejob-7.1.5.1.gem) = 37376
diff --git a/devel/rubygem-activejob-gitlab/pkg-descr b/devel/rubygem-activejob-gitlab/pkg-descr
new file mode 100644
index 000000000000..d618ca834e3c
--- /dev/null
+++ b/devel/rubygem-activejob-gitlab/pkg-descr
@@ -0,0 +1,16 @@
+Active Job is a framework for declaring jobs and making them run on a variety of
+queuing backends. These jobs can be everything from regularly scheduled
+clean-ups, to billing charges, to mailings -- anything that can be chopped up
+into small units of work and run in parallel.
+
+It also serves as the backend for Action Mailer's #deliver_later functionality
+that makes it easy to turn any mailing into a job for running later. That's one
+of the most common jobs in a modern web application: sending emails outside the
+request-response cycle, so the user doesn't have to wait on it.
+
+The main point is to ensure that all Rails apps will have a job infrastructure
+in place, even if it's in the form of an "immediate runner". We can then have
+framework features and other gems build on top of that, without having to worry
+about API differences between Delayed Job and Resque. Picking your queuing
+backend becomes more of an operational concern, then. And you'll be able to
+switch between them without having to rewrite your jobs.
diff --git a/devel/rubygem-activesupport-gitlab/Makefile b/devel/rubygem-activesupport-gitlab/Makefile
new file mode 100644
index 000000000000..e827dbc8e41b
--- /dev/null
+++ b/devel/rubygem-activesupport-gitlab/Makefile
@@ -0,0 +1,37 @@
+PORTNAME= activesupport
+PORTVERSION= ${RAILS_VERSION}
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Toolkit of support libraries and Ruby core extensions extracted from the Rails framework
+WWW= https://github.com/rails/rails/tree/main/activesupport \
+ https://rubyonrails.org/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-base64>=0:converters/rubygem-base64 \
+ rubygem-benchmark>=0.3:benchmarks/rubygem-benchmark \
+ rubygem-bigdecimal>=0:math/rubygem-bigdecimal \
+ rubygem-concurrent-ruby>=1.0.2<2:devel/rubygem-concurrent-ruby \
+ rubygem-connection_pool>=2.2.5:net/rubygem-connection_pool \
+ rubygem-drb>=0:devel/rubygem-drb \
+ rubygem-i18n>=1.6,2<2,2:devel/rubygem-i18n \
+ rubygem-logger>=1.4.2:devel/rubygem-logger \
+ rubygem-minitest>=5.1:devel/rubygem-minitest \
+ rubygem-mutex_m>=0:devel/rubygem-mutex_m \
+ rubygem-securerandom>=0.3:security/rubygem-securerandom \
+ rubygem-tzinfo>=2.0<3:devel/rubygem-tzinfo
+
+USES= cpe gem
+
+NO_ARCH= yes
+
+CPE_VENDOR= activesupport_project
+
+PORTSCOUT= limit:^7\.1\.
+
+.include "${.CURDIR}/../../www/gitlab/Makefile.common"
+.include <bsd.port.mk>
diff --git a/devel/rubygem-activesupport-gitlab/distinfo b/devel/rubygem-activesupport-gitlab/distinfo
new file mode 100644
index 000000000000..956eb38246ba
--- /dev/null
+++ b/devel/rubygem-activesupport-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1734888812
+SHA256 (rubygem/activesupport-7.1.5.1.gem) = 9f0c482e473b9868cb3dfe3e9db549a3bd2302c02e4f595a5caac144a8c7cfb8
+SIZE (rubygem/activesupport-7.1.5.1.gem) = 258560
diff --git a/devel/rubygem-activesupport-gitlab/pkg-descr b/devel/rubygem-activesupport-gitlab/pkg-descr
new file mode 100644
index 000000000000..67a1ee92e655
--- /dev/null
+++ b/devel/rubygem-activesupport-gitlab/pkg-descr
@@ -0,0 +1,4 @@
+Active Support is a collection of utility classes and standard library
+extensions that were found useful for the Rails framework. These additions
+reside in this package so they can be loaded as needed in Ruby projects outside
+of Rails.
diff --git a/devel/rubygem-devise-rails-gitlab/Makefile b/devel/rubygem-devise-rails-gitlab/Makefile
new file mode 100644
index 000000000000..6d9d533b556f
--- /dev/null
+++ b/devel/rubygem-devise-rails-gitlab/Makefile
@@ -0,0 +1,26 @@
+PORTNAME= devise
+PORTVERSION= 4.9.4
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Flexible authentication solution for Rails with Warden
+WWW= https://github.com/heartcombo/devise
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-bcrypt>=3.0<4:security/rubygem-bcrypt \
+ rubygem-orm_adapter>=0.1<1:devel/rubygem-orm_adapter \
+ rubygem-railties-gitlab>=4.1.0:www/rubygem-railties-gitlab \
+ rubygem-responders-rails-gitlab>=0:www/rubygem-responders-rails-gitlab \
+ rubygem-warden>=1.2.3<1.3:devel/rubygem-warden
+
+USES= cpe gem
+
+NO_ARCH= yes
+
+CPE_VENDOR= plataformatec
+
+.include <bsd.port.mk>
diff --git a/devel/rubygem-devise-rails-gitlab/distinfo b/devel/rubygem-devise-rails-gitlab/distinfo
new file mode 100644
index 000000000000..0595d588dc00
--- /dev/null
+++ b/devel/rubygem-devise-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1714227792
+SHA256 (rubygem/devise-4.9.4.gem) = 920042fe5e704c548aa4eb65ebdd65980b83ffae67feb32c697206bfd975a7f8
+SIZE (rubygem/devise-4.9.4.gem) = 95744
diff --git a/devel/rubygem-devise-rails-gitlab/pkg-descr b/devel/rubygem-devise-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..eda2e6aab5ab
--- /dev/null
+++ b/devel/rubygem-devise-rails-gitlab/pkg-descr
@@ -0,0 +1,5 @@
+Devise is a flexible authentication solution for Rails based on Warden. It:
+- Is Rack based;
+- Is a complete MVC solution based on Rails engines;
+- Allows you to have multiple models signed in at the same time;
+- Is based on a modularity concept: use only what you really need.
diff --git a/devel/rubygem-flipper-active_support_cache_store-rails-gitlab/Makefile b/devel/rubygem-flipper-active_support_cache_store-rails-gitlab/Makefile
new file mode 100644
index 000000000000..7a72d75375f5
--- /dev/null
+++ b/devel/rubygem-flipper-active_support_cache_store-rails-gitlab/Makefile
@@ -0,0 +1,20 @@
+PORTNAME= flipper-active_support_cache_store
+PORTVERSION= 0.28.3
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= ruby@FreeBSD.org
+COMMENT= ActiveSupport::Cache store adapter for Flipper
+WWW= https://github.com/jnunemaker/flipper
+
+LICENSE= MIT
+
+RUN_DEPENDS= rubygem-activesupport-gitlab>=4.2<8:devel/rubygem-activesupport-gitlab \
+ rubygem-flipper-gitlab>=${PORTVERSION}<0.29:devel/rubygem-flipper-gitlab
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/devel/rubygem-flipper-active_support_cache_store-rails-gitlab/distinfo b/devel/rubygem-flipper-active_support_cache_store-rails-gitlab/distinfo
new file mode 100644
index 000000000000..1f5d4ba8dfc8
--- /dev/null
+++ b/devel/rubygem-flipper-active_support_cache_store-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1742396064
+SHA256 (rubygem/flipper-active_support_cache_store-0.28.3.gem) = 111ae20579920206f001d4b33a9d96770fd23c709beeb6ca136c9ebc96fbd9fd
+SIZE (rubygem/flipper-active_support_cache_store-0.28.3.gem) = 6656
diff --git a/devel/rubygem-flipper-active_support_cache_store-rails-gitlab/pkg-descr b/devel/rubygem-flipper-active_support_cache_store-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..36326ed2c572
--- /dev/null
+++ b/devel/rubygem-flipper-active_support_cache_store-rails-gitlab/pkg-descr
@@ -0,0 +1 @@
+ActiveSupport::Cache store adapter for Flipper
diff --git a/devel/rubygem-health_check-rails-gitlab/Makefile b/devel/rubygem-health_check-rails-gitlab/Makefile
new file mode 100644
index 000000000000..6eb469b6a832
--- /dev/null
+++ b/devel/rubygem-health_check-rails-gitlab/Makefile
@@ -0,0 +1,22 @@
+PORTNAME= health_check
+PORTVERSION= 3.1.0
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= ruby@FreeBSD.org
+COMMENT= Simple health check of Rails app for uptime monitoring
+WWW= https://github.com/ianheggie/health_check
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-railties-gitlab>=5.0:www/rubygem-railties-gitlab
+
+USES= gem shebangfix
+
+NO_ARCH= yes
+
+SHEBANG_FILES= test/*railsapp
+
+.include <bsd.port.mk>
diff --git a/devel/rubygem-health_check-rails-gitlab/distinfo b/devel/rubygem-health_check-rails-gitlab/distinfo
new file mode 100644
index 000000000000..8e87e7350f91
--- /dev/null
+++ b/devel/rubygem-health_check-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1624630294
+SHA256 (rubygem/health_check-3.1.0.gem) = 10146508237dc54ed7e24c292d8ba7fb8f9590cf26c66e325b947438c4103b57
+SIZE (rubygem/health_check-3.1.0.gem) = 34816
diff --git a/devel/rubygem-health_check-rails-gitlab/pkg-descr b/devel/rubygem-health_check-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..53267c53e60d
--- /dev/null
+++ b/devel/rubygem-health_check-rails-gitlab/pkg-descr
@@ -0,0 +1 @@
+Simple health check of Rails app for uptime monitoring.
diff --git a/devel/rubygem-irb-gitlab/Makefile b/devel/rubygem-irb-gitlab/Makefile
new file mode 100644
index 000000000000..d18b059d03aa
--- /dev/null
+++ b/devel/rubygem-irb-gitlab/Makefile
@@ -0,0 +1,28 @@
+PORTNAME= irb
+PORTVERSION= 1.15.2
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Interactive Ruby
+WWW= https://github.com/ruby/irb
+
+LICENSE= BSD2CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE.txt
+
+RUN_DEPENDS= rubygem-pp>=0.6.0:devel/rubygem-pp \
+ rubygem-rdoc-gitlab>=4.0.0:devel/rubygem-rdoc-gitlab \
+ rubygem-reline>=0.4.2:devel/rubygem-reline
+
+USES= gem
+
+NO_ARCH= yes
+
+PLIST_FILES= bin/irb \
+ share/man/man1/irb.1.gz
+
+post-install:
+ ${INSTALL_DATA} ${WRKSRC}/man/irb.1 ${STAGEDIR}${PREFIX}/share/man/man1
+
+.include <bsd.port.mk>
diff --git a/devel/rubygem-irb-gitlab/distinfo b/devel/rubygem-irb-gitlab/distinfo
new file mode 100644
index 000000000000..caac9fe6921f
--- /dev/null
+++ b/devel/rubygem-irb-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1744289434
+SHA256 (rubygem/irb-1.15.2.gem) = 222f32952e278da34b58ffe45e8634bf4afc2dc7aa9da23fed67e581aa50fdba
+SIZE (rubygem/irb-1.15.2.gem) = 88576
diff --git a/devel/rubygem-irb-gitlab/pkg-descr b/devel/rubygem-irb-gitlab/pkg-descr
new file mode 100644
index 000000000000..bc345563e557
--- /dev/null
+++ b/devel/rubygem-irb-gitlab/pkg-descr
@@ -0,0 +1,2 @@
+IRB stands for "interactive Ruby" and is a tool to interactively execute
+Ruby expressions read from the standard input.
diff --git a/devel/rubygem-peek-rails-gitlab/Makefile b/devel/rubygem-peek-rails-gitlab/Makefile
new file mode 100644
index 000000000000..81405b1932cb
--- /dev/null
+++ b/devel/rubygem-peek-rails-gitlab/Makefile
@@ -0,0 +1,20 @@
+PORTNAME= peek
+PORTVERSION= 1.1.0
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Take a peek into your Rails application
+WWW= https://github.com/peek/peek
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE.txt
+
+RUN_DEPENDS= rubygem-railties-gitlab>=4.0.0:www/rubygem-railties-gitlab
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/devel/rubygem-peek-rails-gitlab/distinfo b/devel/rubygem-peek-rails-gitlab/distinfo
new file mode 100644
index 000000000000..9ef19d243bd1
--- /dev/null
+++ b/devel/rubygem-peek-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1576923479
+SHA256 (rubygem/peek-1.1.0.gem) = d6501ead8cde46d8d8ed0d59eb6f0ba713d0a41c11a2c4a81447b2dce37b3ecc
+SIZE (rubygem/peek-1.1.0.gem) = 25600
diff --git a/devel/rubygem-peek-rails-gitlab/pkg-descr b/devel/rubygem-peek-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..c25be2488a63
--- /dev/null
+++ b/devel/rubygem-peek-rails-gitlab/pkg-descr
@@ -0,0 +1,14 @@
+This is a profiling tool originally built at GitHub to help us get an insight
+into our application. Now, we have extracted this into Peek, so that other Rails
+application can experience the same benefit.
+
+Peek puts a little bar on top of your application to show you all sorts of
+helpful information about your application. From the screenshot above, you can
+see that Peek provides information about database queries, cache, Resque workers
+and more. However, this is only part of Peek's beauty.
+
+The true beauty of Peek lies in the fact that it is an extensible platform. If
+there are some performance metrics that you need but are not available on Peek,
+you can find it from the list of available Peek Views and integrate it into
+Peek. Even if you do not find what you want on Peek Views, you can always create
+your own.
diff --git a/devel/rubygem-rails-i18n-rails-gitlab/Makefile b/devel/rubygem-rails-i18n-rails-gitlab/Makefile
new file mode 100644
index 000000000000..1e27dc3a6c20
--- /dev/null
+++ b/devel/rubygem-rails-i18n-rails-gitlab/Makefile
@@ -0,0 +1,21 @@
+PORTNAME= rails-i18n
+PORTVERSION= 7.0.10
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Set of common locale data and translations for Rails
+WWW= https://github.com/svenfuchs/rails-i18n
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE.txt
+
+RUN_DEPENDS= rubygem-i18n>=0.7,2<2,2:devel/rubygem-i18n \
+ rubygem-railties-gitlab>=6.0.0<8:www/rubygem-railties-gitlab
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/devel/rubygem-rails-i18n-rails-gitlab/distinfo b/devel/rubygem-rails-i18n-rails-gitlab/distinfo
new file mode 100644
index 000000000000..7ffb16c83918
--- /dev/null
+++ b/devel/rubygem-rails-i18n-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1730296060
+SHA256 (rubygem/rails-i18n-7.0.10.gem) = efae16e0ac28c0f42e98555c8db1327d69ab02058c8b535e0933cb106dd931ca
+SIZE (rubygem/rails-i18n-7.0.10.gem) = 121344
diff --git a/devel/rubygem-rails-i18n-rails-gitlab/pkg-descr b/devel/rubygem-rails-i18n-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..9c9396c860d9
--- /dev/null
+++ b/devel/rubygem-rails-i18n-rails-gitlab/pkg-descr
@@ -0,0 +1,4 @@
+Centralization of locale data collection for Ruby on Rails.
+
+It provides a set of common locale data and translations to internationalize
+and/or localize your Rails applications.
diff --git a/devel/rubygem-rdoc-gitlab/Makefile b/devel/rubygem-rdoc-gitlab/Makefile
new file mode 100644
index 000000000000..aa9df190eb3b
--- /dev/null
+++ b/devel/rubygem-rdoc-gitlab/Makefile
@@ -0,0 +1,29 @@
+PORTNAME= rdoc
+PORTVERSION= 6.3.4.1
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= RDoc produces HTML and command-line documentation for Ruby projects
+WWW= https://ruby.github.io/rdoc/ \
+ https://github.com/ruby/rdoc
+
+LICENSE= GPLv2 RUBY
+LICENSE_COMB= dual
+LICENSE_FILE_RUBY= ${WRKSRC}/LICENSE.rdoc
+
+USES= cpe gem
+
+NO_ARCH= yes
+
+PLIST_FILES= bin/rdoc \
+ bin/ri \
+ share/man/man1/ri.1.gz
+
+CPE_VENDOR= ruby-lang
+
+post-install:
+ ${INSTALL_DATA} ${WRKSRC}/man/ri.1 ${STAGEDIR}${PREFIX}/share/man/man1
+
+.include <bsd.port.mk>
diff --git a/devel/rubygem-rdoc-gitlab/distinfo b/devel/rubygem-rdoc-gitlab/distinfo
new file mode 100644
index 000000000000..4e6f307a78b0
--- /dev/null
+++ b/devel/rubygem-rdoc-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1747479202
+SHA256 (rubygem/rdoc-6.3.4.1.gem) = 0e1c30d007ed66b25698dea49bbdb5b50e6b25a04a851023d9b9d0317c0dc083
+SIZE (rubygem/rdoc-6.3.4.1.gem) = 570368
diff --git a/devel/rubygem-rdoc-gitlab/pkg-descr b/devel/rubygem-rdoc-gitlab/pkg-descr
new file mode 100644
index 000000000000..2feceb4c8aa1
--- /dev/null
+++ b/devel/rubygem-rdoc-gitlab/pkg-descr
@@ -0,0 +1,3 @@
+RDoc produces HTML and command-line documentation for Ruby projects. RDoc
+includes the +rdoc+ and +ri+ tools for generating and displaying online
+documentation. See RDoc for a description of RDoc's markup and basic use.
diff --git a/devel/rubygem-sidekiq-cron-rails-gitlab/Makefile b/devel/rubygem-sidekiq-cron-rails-gitlab/Makefile
new file mode 100644
index 000000000000..8607d6c90d61
--- /dev/null
+++ b/devel/rubygem-sidekiq-cron-rails-gitlab/Makefile
@@ -0,0 +1,22 @@
+PORTNAME= sidekiq-cron
+PORTVERSION= 1.12.0
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= ruby@FreeBSD.org
+COMMENT= Enables to set jobs to be run in specified time (using CRON notation)
+WWW= https://github.com/sidekiq-cron/sidekiq-cron
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE.txt
+
+RUN_DEPENDS= rubygem-fugit>=1.8<2:devel/rubygem-fugit \
+ rubygem-globalid-rails-gitlab>=1.0.1:databases/rubygem-globalid-rails-gitlab \
+ rubygem-sidekiq-gitlab>=6:devel/rubygem-sidekiq-gitlab
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/devel/rubygem-sidekiq-cron-rails-gitlab/distinfo b/devel/rubygem-sidekiq-cron-rails-gitlab/distinfo
new file mode 100644
index 000000000000..e1a55ac8baab
--- /dev/null
+++ b/devel/rubygem-sidekiq-cron-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1702543774
+SHA256 (rubygem/sidekiq-cron-1.12.0.gem) = 6663080a454088bd88773a0da3ae91e554b8a2e8b06cfc629529a83fd1a3096c
+SIZE (rubygem/sidekiq-cron-1.12.0.gem) = 23040
diff --git a/devel/rubygem-sidekiq-cron-rails-gitlab/pkg-descr b/devel/rubygem-sidekiq-cron-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..1763659ffead
--- /dev/null
+++ b/devel/rubygem-sidekiq-cron-rails-gitlab/pkg-descr
@@ -0,0 +1,9 @@
+Sidekiq-Cron is a scheduling add-on for Sidekiq.
+
+It runs a thread alongside Sidekiq workers to schedule jobs at specified times
+(using cron notation * * * * * parsed by Rufus-Scheduler).
+
+It also checks for new jobs to schedule every 10 seconds and doesn't schedule
+the same job multiple times when more than one Sidekiq worker is running.
+
+Scheduling jobs are added only when at least one Sidekiq process is running.
diff --git a/devel/rubygem-sprockets-rails-rails-gitlab/Makefile b/devel/rubygem-sprockets-rails-rails-gitlab/Makefile
new file mode 100644
index 000000000000..e2eb78e0843d
--- /dev/null
+++ b/devel/rubygem-sprockets-rails-rails-gitlab/Makefile
@@ -0,0 +1,22 @@
+PORTNAME= sprockets-rails
+PORTVERSION= 3.5.2
+CATEGORIES= devel rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Sprockets Rails integration
+WWW= https://github.com/rails/sprockets-rails
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-actionpack-gitlab>=5.2:www/rubygem-actionpack-gitlab \
+ rubygem-activesupport-gitlab>=5.2:devel/rubygem-activesupport-gitlab \
+ rubygem-sprockets>=3.0.0:devel/rubygem-sprockets
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/devel/rubygem-sprockets-rails-rails-gitlab/distinfo b/devel/rubygem-sprockets-rails-rails-gitlab/distinfo
new file mode 100644
index 000000000000..ac8e143c69bc
--- /dev/null
+++ b/devel/rubygem-sprockets-rails-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1722711329
+SHA256 (rubygem/sprockets-rails-3.5.2.gem) = a9e88e6ce9f8c912d349aa5401509165ec42326baf9e942a85de4b76dbc4119e
+SIZE (rubygem/sprockets-rails-3.5.2.gem) = 16384
diff --git a/devel/rubygem-sprockets-rails-rails-gitlab/pkg-descr b/devel/rubygem-sprockets-rails-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..04e7020dca45
--- /dev/null
+++ b/devel/rubygem-sprockets-rails-rails-gitlab/pkg-descr
@@ -0,0 +1 @@
+Sprockets Rails integration
diff --git a/mail/Makefile b/mail/Makefile
index 6c286492fe1f..b29b0f531b41 100644
--- a/mail/Makefile
+++ b/mail/Makefile
@@ -598,12 +598,14 @@
SUBDIR += rspamd-devel
SUBDIR += rss2email3
SUBDIR += ruby-notmuch
+ SUBDIR += rubygem-actionmailbox-gitlab
SUBDIR += rubygem-actionmailbox60
SUBDIR += rubygem-actionmailbox61
SUBDIR += rubygem-actionmailbox70
SUBDIR += rubygem-actionmailbox71
SUBDIR += rubygem-actionmailbox72
SUBDIR += rubygem-actionmailbox80
+ SUBDIR += rubygem-actionmailer-gitlab
SUBDIR += rubygem-actionmailer4
SUBDIR += rubygem-actionmailer5
SUBDIR += rubygem-actionmailer50
@@ -632,6 +634,7 @@
SUBDIR += rubygem-pony
SUBDIR += rubygem-premailer
SUBDIR += rubygem-premailer-rails
+ SUBDIR += rubygem-premailer-rails-rails-gitlab
SUBDIR += rubygem-premailer-rails-rails5
SUBDIR += rubygem-premailer-rails-rails52
SUBDIR += rubygem-premailer-rails-rails60
diff --git a/mail/rubygem-actionmailbox-gitlab/Makefile b/mail/rubygem-actionmailbox-gitlab/Makefile
new file mode 100644
index 000000000000..0dd42085926e
--- /dev/null
+++ b/mail/rubygem-actionmailbox-gitlab/Makefile
@@ -0,0 +1,32 @@
+PORTNAME= actionmailbox
+PORTVERSION= ${RAILS_VERSION}
+CATEGORIES= mail rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Receive and process incoming emails in Rails applications
+WWW= https://github.com/rails/rails/tree/main/actionmailbox \
+ https://rubyonrails.org/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-actionpack-gitlab>=${PORTVERSION}<${PORTVERSION}_99:www/rubygem-actionpack-gitlab \
+ rubygem-activejob-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activejob-gitlab \
+ rubygem-activerecord-gitlab>=${PORTVERSION}<${PORTVERSION}_99:databases/rubygem-activerecord-gitlab \
+ rubygem-activestorage-gitlab>=${PORTVERSION}<${PORTVERSION}_99:net/rubygem-activestorage-gitlab \
+ rubygem-activesupport-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activesupport-gitlab \
+ rubygem-mail>=2.7.1,2:mail/rubygem-mail \
+ rubygem-net-imap>=0:mail/rubygem-net-imap \
+ rubygem-net-pop>=0:mail/rubygem-net-pop \
+ rubygem-net-smtp>=0:mail/rubygem-net-smtp
+
+USES= gem
+
+NO_ARCH= yes
+
+PORTSCOUT= limit:^7\.1\.
+
+.include "${.CURDIR}/../../www/gitlab/Makefile.common"
+.include <bsd.port.mk>
diff --git a/mail/rubygem-actionmailbox-gitlab/distinfo b/mail/rubygem-actionmailbox-gitlab/distinfo
new file mode 100644
index 000000000000..bee32cb33adc
--- /dev/null
+++ b/mail/rubygem-actionmailbox-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1734888814
+SHA256 (rubygem/actionmailbox-7.1.5.1.gem) = c3c20589fe43e6fa88bba2d76a6f9805ffdd02531f4a9a4af8197d59f5a5360a
+SIZE (rubygem/actionmailbox-7.1.5.1.gem) = 22528
diff --git a/mail/rubygem-actionmailbox-gitlab/pkg-descr b/mail/rubygem-actionmailbox-gitlab/pkg-descr
new file mode 100644
index 000000000000..ffc1daea8253
--- /dev/null
+++ b/mail/rubygem-actionmailbox-gitlab/pkg-descr
@@ -0,0 +1,12 @@
+Action Mailbox routes incoming emails to controller-like mailboxes for
+processing in Rails. It ships with ingresses for Mailgun, Mandrill, Postmark,
+and SendGrid. You can also handle inbound mails directly via the built-in Exim,
+Postfix, and Qmail ingresses.
+
+The inbound emails are turned into InboundEmail records using Active Record and
+feature lifecycle tracking, storage of the original email on cloud storage via
+Active Storage, and responsible data handling with on-by-default incineration.
+
+These inbound emails are routed asynchronously using Active Job to one or
+several dedicated mailboxes, which are capable of interacting directly with the
+rest of your domain model.
diff --git a/mail/rubygem-actionmailer-gitlab/Makefile b/mail/rubygem-actionmailer-gitlab/Makefile
new file mode 100644
index 000000000000..36bf654c541a
--- /dev/null
+++ b/mail/rubygem-actionmailer-gitlab/Makefile
@@ -0,0 +1,29 @@
+PORTNAME= actionmailer
+PORTVERSION= ${RAILS_VERSION}
+CATEGORIES= mail rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Compose, deliver, and test emails on Rails
+WWW= https://github.com/rails/rails/tree/main/actionmailer \
+ https://rubyonrails.org/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-actionpack-gitlab>=${PORTVERSION}<${PORTVERSION}_99:www/rubygem-actionpack-gitlab \
+ rubygem-actionview-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-actionview-gitlab \
+ rubygem-activejob-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activejob-gitlab \
+ rubygem-activesupport-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activesupport-gitlab \
+ rubygem-mail>=2.5.4,2<3,2:mail/rubygem-mail \
+ rubygem-rails-dom-testing-rails-gitlab>=2.2<3:textproc/rubygem-rails-dom-testing-rails-gitlab
+
+USES= gem
+
+NO_ARCH= yes
+
+PORTSCOUT= limit:^7\.1\.
+
+.include "${.CURDIR}/../../www/gitlab/Makefile.common"
+.include <bsd.port.mk>
diff --git a/mail/rubygem-actionmailer-gitlab/distinfo b/mail/rubygem-actionmailer-gitlab/distinfo
new file mode 100644
index 000000000000..c1c6df2ad492
--- /dev/null
+++ b/mail/rubygem-actionmailer-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1734888816
+SHA256 (rubygem/actionmailer-7.1.5.1.gem) = b213d6d880b23b093ccfef3b4f87a3d27e4666442f71b5b634b2d19e19a49759
+SIZE (rubygem/actionmailer-7.1.5.1.gem) = 34304
diff --git a/mail/rubygem-actionmailer-gitlab/pkg-descr b/mail/rubygem-actionmailer-gitlab/pkg-descr
new file mode 100644
index 000000000000..e757a32e32bf
--- /dev/null
+++ b/mail/rubygem-actionmailer-gitlab/pkg-descr
@@ -0,0 +1,12 @@
+Action Mailer is a framework for designing email service layers. These layers
+are used to consolidate code for sending out forgotten passwords, welcome wishes
+on signup, invoices for billing, and any other use case that requires a written
+notification to either a person or another system.
+
+Action Mailer is in essence a wrapper around Action Controller and the Mail gem.
+It provides a way to make emails using templates in the same way that Action
+Controller renders views using templates.
+
+Additionally, an Action Mailer class can be used to process incoming email, such
+as allowing a blog to accept new posts from an email (which could even have been
+sent from a phone).
diff --git a/mail/rubygem-premailer-rails-rails-gitlab/Makefile b/mail/rubygem-premailer-rails-rails-gitlab/Makefile
new file mode 100644
index 000000000000..89ef97c8804f
--- /dev/null
+++ b/mail/rubygem-premailer-rails-rails-gitlab/Makefile
@@ -0,0 +1,22 @@
+PORTNAME= premailer-rails
+PORTVERSION= 1.12.0
+CATEGORIES= mail rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= CSS styled emails without the hassle
+WWW= https://github.com/fphilipe/premailer-rails
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= rubygem-actionmailer-gitlab>=3:mail/rubygem-actionmailer-gitlab \
+ rubygem-net-smtp>=0:mail/rubygem-net-smtp \
+ rubygem-premailer>=1.7.9<2:mail/rubygem-premailer
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/mail/rubygem-premailer-rails-rails-gitlab/distinfo b/mail/rubygem-premailer-rails-rails-gitlab/distinfo
new file mode 100644
index 000000000000..87942c22dfcd
--- /dev/null
+++ b/mail/rubygem-premailer-rails-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1714227794
+SHA256 (rubygem/premailer-rails-1.12.0.gem) = c13815d161b9bc7f7d3d81396b0bb0a61a90fa9bd89931548bf4e537c7710400
+SIZE (rubygem/premailer-rails-1.12.0.gem) = 25088
diff --git a/mail/rubygem-premailer-rails-rails-gitlab/pkg-descr b/mail/rubygem-premailer-rails-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..4d35cd4d87da
--- /dev/null
+++ b/mail/rubygem-premailer-rails-rails-gitlab/pkg-descr
@@ -0,0 +1,18 @@
+premailer-rails is a drop in solution for styling HTML emails with CSS without
+having to do the hard work yourself.
+
+Styling emails is not just a matter of linking to a stylesheet. Most clients,
+especially web clients, ignore linked stylesheets or <style> tags in the HTML.
+The workaround is to write all the CSS rules in the style attribute of each tag
+inside your email. This is a rather tedious and hard to maintain approach.
+
+Premailer to the rescue! The great premailer gem applies all CSS rules to each
+matching HTML element by adding them to the style attribute. This allows you to
+keep HTML and CSS in separate files, just as you're used to from web
+development, thus keeping your sanity.
+
+This gem is an adapter for premailer to work with actionmailer out of the box.
+Actionmailer is the email framework used in Rails, which also works outside of
+Rails. Although premailer-rails has certain Rails specific features, it also
+works in the absence of Rails making it compatible with other frameworks such as
+sinatra.
diff --git a/net/Makefile b/net/Makefile
index 858b4d9dd186..4949a024b740 100644
--- a/net/Makefile
+++ b/net/Makefile
@@ -1260,6 +1260,7 @@
SUBDIR += rtg
SUBDIR += rtpproxy
SUBDIR += rtptools
+ SUBDIR += rubygem-activestorage-gitlab
SUBDIR += rubygem-activestorage52
SUBDIR += rubygem-activestorage60
SUBDIR += rubygem-activestorage61
diff --git a/net/rubygem-activestorage-gitlab/Makefile b/net/rubygem-activestorage-gitlab/Makefile
new file mode 100644
index 000000000000..aa7f53cc97cc
--- /dev/null
+++ b/net/rubygem-activestorage-gitlab/Makefile
@@ -0,0 +1,28 @@
+PORTNAME= activestorage
+PORTVERSION= ${RAILS_VERSION}
+CATEGORIES= net rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Attach cloud and local files in Rails applications
+WWW= https://github.com/rails/rails/tree/main/activestorage \
+ https://rubyonrails.org/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-actionpack-gitlab>=${PORTVERSION}<${PORTVERSION}_99:www/rubygem-actionpack-gitlab \
+ rubygem-activejob-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activejob-gitlab \
+ rubygem-activerecord-gitlab>=${PORTVERSION}<${PORTVERSION}_99:databases/rubygem-activerecord-gitlab \
+ rubygem-activesupport-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activesupport-gitlab \
+ rubygem-marcel>=1.0<2:devel/rubygem-marcel
+
+USES= gem
+
+NO_ARCH= yes
+
+PORTSCOUT= limit:^7\.1\.
+
+.include "${.CURDIR}/../../www/gitlab/Makefile.common"
+.include <bsd.port.mk>
diff --git a/net/rubygem-activestorage-gitlab/distinfo b/net/rubygem-activestorage-gitlab/distinfo
new file mode 100644
index 000000000000..705479df0713
--- /dev/null
+++ b/net/rubygem-activestorage-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1734888818
+SHA256 (rubygem/activestorage-7.1.5.1.gem) = ae6b8b076858c666eaad6f896d786b67654235e861e24a83f61f1cc97b43ff63
+SIZE (rubygem/activestorage-7.1.5.1.gem) = 67584
diff --git a/net/rubygem-activestorage-gitlab/pkg-descr b/net/rubygem-activestorage-gitlab/pkg-descr
new file mode 100644
index 000000000000..48422441ebc3
--- /dev/null
+++ b/net/rubygem-activestorage-gitlab/pkg-descr
@@ -0,0 +1,11 @@
+Active Storage makes it simple to upload and reference files in cloud services
+like Amazon S3, Google Cloud Storage, or Microsoft Azure Storage, and attach
+those files to Active Records. Supports having one main service and mirrors in
+other services for redundancy. It also provides a disk service for testing or
+local deployments, but the focus is on cloud storage.
+
+Files can be uploaded from the server to the cloud or directly from the client
+to the cloud.
+
+Image files can furthermore be transformed using on-demand variants for quality,
+aspect ratio, size, or any other MiniMagick or Vips supported transformation.
diff --git a/security/Makefile b/security/Makefile
index 54b0a4ba353f..f7962555bb6d 100644
--- a/security/Makefile
+++ b/security/Makefile
@@ -1143,6 +1143,7 @@
SUBDIR += rubygem-doorkeeper
SUBDIR += rubygem-doorkeeper-device_authorization_grant
SUBDIR += rubygem-doorkeeper-openid_connect
+ SUBDIR += rubygem-doorkeeper-rails-gitlab
SUBDIR += rubygem-doorkeeper-rails5
SUBDIR += rubygem-doorkeeper-rails50
SUBDIR += rubygem-doorkeeper-rails70
diff --git a/security/rubygem-doorkeeper-rails-gitlab/Makefile b/security/rubygem-doorkeeper-rails-gitlab/Makefile
new file mode 100644
index 000000000000..be88aa908092
--- /dev/null
+++ b/security/rubygem-doorkeeper-rails-gitlab/Makefile
@@ -0,0 +1,22 @@
+PORTNAME= doorkeeper
+PORTVERSION= 5.8.2
+CATEGORIES= security rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= OAuth2 provider for Rails and Grape
+WWW= https://github.com/doorkeeper-gem/doorkeeper
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-railties-gitlab>=5:www/rubygem-railties-gitlab
+
+USES= cpe gem
+
+NO_ARCH= yes
+
+CPE_VENDOR= doorkeeper_project
+
+.include <bsd.port.mk>
diff --git a/security/rubygem-doorkeeper-rails-gitlab/distinfo b/security/rubygem-doorkeeper-rails-gitlab/distinfo
new file mode 100644
index 000000000000..af2ef874822e
--- /dev/null
+++ b/security/rubygem-doorkeeper-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1744289466
+SHA256 (rubygem/doorkeeper-5.8.2.gem) = a73d07aeaf590b1e7e2a35390446f23131c9f37bc0561653e514d3973f4d50d3
+SIZE (rubygem/doorkeeper-5.8.2.gem) = 109056
diff --git a/security/rubygem-doorkeeper-rails-gitlab/pkg-descr b/security/rubygem-doorkeeper-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..ed39cf3f3049
--- /dev/null
+++ b/security/rubygem-doorkeeper-rails-gitlab/pkg-descr
@@ -0,0 +1,2 @@
+Doorkeeper is a Ruby gem that makes it easy to introduce OAuth 2
+provider functionality to a Rails or Grape application.
diff --git a/textproc/Makefile b/textproc/Makefile
index 20ef83c5a2d7..4dbaf38fadaf 100644
--- a/textproc/Makefile
+++ b/textproc/Makefile
@@ -1757,6 +1757,7 @@
SUBDIR += rubygem-actionpack-xml_parser-rails52
SUBDIR += rubygem-actionpack-xml_parser-rails61
SUBDIR += rubygem-actionpack-xml_parser-rails72
+ SUBDIR += rubygem-actiontext-gitlab
SUBDIR += rubygem-actiontext60
SUBDIR += rubygem-actiontext61
SUBDIR += rubygem-actiontext70
@@ -1902,6 +1903,7 @@
SUBDIR += rubygem-puppet-strings
SUBDIR += rubygem-raabro
SUBDIR += rubygem-rails-dom-testing
+ SUBDIR += rubygem-rails-dom-testing-rails-gitlab
SUBDIR += rubygem-rails-dom-testing-rails5
SUBDIR += rubygem-rails-dom-testing-rails50
SUBDIR += rubygem-rails-dom-testing-rails52
diff --git a/textproc/rubygem-actiontext-gitlab/Makefile b/textproc/rubygem-actiontext-gitlab/Makefile
new file mode 100644
index 000000000000..bee32d2cc8a5
--- /dev/null
+++ b/textproc/rubygem-actiontext-gitlab/Makefile
@@ -0,0 +1,29 @@
+PORTNAME= actiontext
+PORTVERSION= ${RAILS_VERSION}
+CATEGORIES= textproc rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Edit and display rich text in Rails applications
+WWW= https://github.com/rails/rails/tree/main/actiontext \
+ https://rubyonrails.org/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-actionpack-gitlab>=${PORTVERSION}<${PORTVERSION}_99:www/rubygem-actionpack-gitlab \
+ rubygem-activerecord-gitlab>=${PORTVERSION}<${PORTVERSION}_99:databases/rubygem-activerecord-gitlab \
+ rubygem-activestorage-gitlab>=${PORTVERSION}<${PORTVERSION}_99:net/rubygem-activestorage-gitlab \
+ rubygem-activesupport-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activesupport-gitlab \
+ rubygem-globalid-rails-gitlab>=0.6.0:databases/rubygem-globalid-rails-gitlab \
+ rubygem-nokogiri>=1.8.5:textproc/rubygem-nokogiri
+
+USES= gem
+
+NO_ARCH= yes
+
+PORTSCOUT= limit:^7\.1\.
+
+.include "${.CURDIR}/../../www/gitlab/Makefile.common"
+.include <bsd.port.mk>
diff --git a/textproc/rubygem-actiontext-gitlab/distinfo b/textproc/rubygem-actiontext-gitlab/distinfo
new file mode 100644
index 000000000000..6576322b2ce1
--- /dev/null
+++ b/textproc/rubygem-actiontext-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1734888820
+SHA256 (rubygem/actiontext-7.1.5.1.gem) = b8e261cfad5bc6a78b3f15be5e7c7f32190041b3dc6f027a3a353b4392d2f7ec
+SIZE (rubygem/actiontext-7.1.5.1.gem) = 137216
diff --git a/textproc/rubygem-actiontext-gitlab/pkg-descr b/textproc/rubygem-actiontext-gitlab/pkg-descr
new file mode 100644
index 000000000000..785267e465f8
--- /dev/null
+++ b/textproc/rubygem-actiontext-gitlab/pkg-descr
@@ -0,0 +1,7 @@
+Action Text brings rich text content and editing to Rails. It includes the Trix
+editor that handles everything from formatting to links to quotes to lists to
+embedded images and galleries. The rich text content generated by the Trix
+editor is saved in its own RichText model that's associated with any existing
+Active Record model in the application. Any embedded images (or other
+attachments) are automatically stored using Active Storage and associated with
+the included RichText model.
diff --git a/textproc/rubygem-rails-dom-testing-rails-gitlab/Makefile b/textproc/rubygem-rails-dom-testing-rails-gitlab/Makefile
new file mode 100644
index 000000000000..df75a2f17b89
--- /dev/null
+++ b/textproc/rubygem-rails-dom-testing-rails-gitlab/Makefile
@@ -0,0 +1,22 @@
+PORTNAME= rails-dom-testing
+PORTVERSION= 2.2.0
+CATEGORIES= textproc rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Analyse and compare DOMs using Nokogiri
+WWW= https://github.com/rails/rails-dom-testing
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-activesupport-gitlab>=5.0.0:devel/rubygem-activesupport-gitlab \
+ rubygem-minitest>=0:devel/rubygem-minitest \
+ rubygem-nokogiri>=1.6:textproc/rubygem-nokogiri
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/textproc/rubygem-rails-dom-testing-rails-gitlab/distinfo b/textproc/rubygem-rails-dom-testing-rails-gitlab/distinfo
new file mode 100644
index 000000000000..ad58a5f7a9ce
--- /dev/null
+++ b/textproc/rubygem-rails-dom-testing-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1697330216
+SHA256 (rubygem/rails-dom-testing-2.2.0.gem) = e515712e48df1f687a1d7c380fd7b07b8558faa26464474da64183a7426fa93b
+SIZE (rubygem/rails-dom-testing-2.2.0.gem) = 16896
diff --git a/textproc/rubygem-rails-dom-testing-rails-gitlab/pkg-descr b/textproc/rubygem-rails-dom-testing-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..ddabc817c4fd
--- /dev/null
+++ b/textproc/rubygem-rails-dom-testing-rails-gitlab/pkg-descr
@@ -0,0 +1,6 @@
+This gem is responsible for comparing HTML doms and asserting that DOM elements
+are present in Rails applications. Doms are compared via assert_dom_equal and
+assert_dom_not_equal. Elements are asserted via assert_select,
+assert_select_encoded, assert_select_email and a subset of the dom can be
+selected with css_select. The gem is developed for Rails 4.2 and above, and
+will not work on previous versions.
diff --git a/www/Makefile b/www/Makefile
index 8fa719f781ca..16d9e68fa6ef 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -2010,6 +2010,7 @@
SUBDIR += rt44
SUBDIR += rt50
SUBDIR += rubygem-ace-rails-ap
+ SUBDIR += rubygem-actioncable-gitlab
SUBDIR += rubygem-actioncable5
SUBDIR += rubygem-actioncable50
SUBDIR += rubygem-actioncable52
@@ -2019,6 +2020,7 @@
SUBDIR += rubygem-actioncable71
SUBDIR += rubygem-actioncable72
SUBDIR += rubygem-actioncable80
+ SUBDIR += rubygem-actionpack-gitlab
SUBDIR += rubygem-actionpack4
SUBDIR += rubygem-actionpack5
SUBDIR += rubygem-actionpack50
@@ -2074,6 +2076,7 @@
SUBDIR += rubygem-crass
SUBDIR += rubygem-cssbundling-rails
SUBDIR += rubygem-cssbundling-rails-gitlab
+ SUBDIR += rubygem-cssbundling-rails-rails-gitlab
SUBDIR += rubygem-cssbundling-rails-rails70
SUBDIR += rubygem-cssbundling-rails-rails71
SUBDIR += rubygem-cssbundling-rails-rails72
@@ -2139,6 +2142,7 @@
SUBDIR += rubygem-gollum-grit_adapter
SUBDIR += rubygem-gollum-lib
SUBDIR += rubygem-gollum-rugged_adapter
+ SUBDIR += rubygem-gon-rails-gitlab
SUBDIR += rubygem-gon-rails5
SUBDIR += rubygem-gon-rails50
SUBDIR += rubygem-gon-rails60
@@ -2205,6 +2209,7 @@
SUBDIR += rubygem-kamal
SUBDIR += rubygem-kaminari
SUBDIR += rubygem-kaminari-actionview
+ SUBDIR += rubygem-kaminari-actionview-rails-gitlab
SUBDIR += rubygem-kaminari-actionview-rails5
SUBDIR += rubygem-kaminari-actionview-rails50
SUBDIR += rubygem-kaminari-actionview-rails52
@@ -2212,6 +2217,7 @@
SUBDIR += rubygem-kaminari-actionview-rails61
SUBDIR += rubygem-kaminari-actionview-rails70
SUBDIR += rubygem-kaminari-activerecord
+ SUBDIR += rubygem-kaminari-activerecord-rails-gitlab
SUBDIR += rubygem-kaminari-activerecord-rails5
SUBDIR += rubygem-kaminari-activerecord-rails50
SUBDIR += rubygem-kaminari-activerecord-rails52
@@ -2219,6 +2225,7 @@
SUBDIR += rubygem-kaminari-activerecord-rails61
SUBDIR += rubygem-kaminari-activerecord-rails70
SUBDIR += rubygem-kaminari-core
+ SUBDIR += rubygem-kaminari-rails-gitlab
SUBDIR += rubygem-kaminari-rails4
SUBDIR += rubygem-kaminari-rails5
SUBDIR += rubygem-kaminari-rails50
@@ -2234,6 +2241,7 @@
SUBDIR += rubygem-llhttp
SUBDIR += rubygem-llhttp-ffi
SUBDIR += rubygem-lograge
+ SUBDIR += rubygem-lograge-rails-gitlab
SUBDIR += rubygem-lograge-rails5
SUBDIR += rubygem-lograge-rails52
SUBDIR += rubygem-lograge-rails60
@@ -2308,6 +2316,7 @@
SUBDIR += rubygem-rackup
SUBDIR += rubygem-rackup10
SUBDIR += rubygem-rackup21
+ SUBDIR += rubygem-rails-gitlab
SUBDIR += rubygem-rails-settings-cached
SUBDIR += rubygem-rails-settings-cached-rails5
SUBDIR += rubygem-rails-settings-cached-rails50
@@ -2325,6 +2334,7 @@
SUBDIR += rubygem-rails_autolink
SUBDIR += rubygem-rails_serve_static_assets
SUBDIR += rubygem-rails_stdout_logging
+ SUBDIR += rubygem-railties-gitlab
SUBDIR += rubygem-railties4
SUBDIR += rubygem-railties5
SUBDIR += rubygem-railties50
@@ -2344,6 +2354,7 @@
SUBDIR += rubygem-rdf-normalize
SUBDIR += rubygem-redcloth
SUBDIR += rubygem-redis-rack
+ SUBDIR += rubygem-redis-rack-gitlab
SUBDIR += rubygem-redis-rack2
SUBDIR += rubygem-redis-rails
SUBDIR += rubygem-redis-rails-rails5
@@ -2352,6 +2363,7 @@
SUBDIR += rubygem-redis-rails-rails60
SUBDIR += rubygem-redis-rails-rails61
SUBDIR += rubygem-responders
+ SUBDIR += rubygem-responders-rails-gitlab
SUBDIR += rubygem-responders-rails5
SUBDIR += rubygem-responders-rails52
SUBDIR += rubygem-responders-rails60
diff --git a/www/gitlab/Makefile.common b/www/gitlab/Makefile.common
index 97c84df1048b..17ce8d8b1a3f 100644
--- a/www/gitlab/Makefile.common
+++ b/www/gitlab/Makefile.common
@@ -12,3 +12,6 @@ GITLAB_GIT_VERSION_SHORT= ${GITLAB_GIT_VERSION:C/^([0-9]*\.[0-9]*)\..*/\1/}
GITLAB_KAS_GRPC_VERSION= ${GITLAB_VERSION}
#GITLAB_KAS_GRPC_VERSION= 17.11.0.pre.rc43
+# Rails version
+RAILS_VERSION= 7.1.5.1
+
diff --git a/www/rubygem-actioncable-gitlab/Makefile b/www/rubygem-actioncable-gitlab/Makefile
new file mode 100644
index 000000000000..a6870b1ba8c0
--- /dev/null
+++ b/www/rubygem-actioncable-gitlab/Makefile
@@ -0,0 +1,28 @@
+PORTNAME= actioncable
+PORTVERSION= ${RAILS_VERSION}
+CATEGORIES= www rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Structure many real-time application concerns into channels over a single WebSocket connection
+WWW= https://github.com/rails/rails/tree/main/actioncable \
+ https://rubyonrails.org/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-actionpack-gitlab>=${PORTVERSION}<${PORTVERSION}_99:www/rubygem-actionpack-gitlab \
+ rubygem-activesupport-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activesupport-gitlab \
+ rubygem-nio4r>=2.0<3:devel/rubygem-nio4r \
+ rubygem-websocket-driver>=0.6.1:www/rubygem-websocket-driver \
+ rubygem-zeitwerk>=2.6<3:devel/rubygem-zeitwerk
+
+USES= gem
+
+NO_ARCH= yes
+
+PORTSCOUT= limit:^7\.1\.
+
+.include "${.CURDIR}/../../www/gitlab/Makefile.common"
+.include <bsd.port.mk>
diff --git a/www/rubygem-actioncable-gitlab/distinfo b/www/rubygem-actioncable-gitlab/distinfo
new file mode 100644
index 000000000000..3d467b025814
--- /dev/null
+++ b/www/rubygem-actioncable-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1734888822
+SHA256 (rubygem/actioncable-7.1.5.1.gem) = 764637b5b2d97b94e412d562c177bfd16b0fd769d55c98846362f5263e8aaa0d
+SIZE (rubygem/actioncable-7.1.5.1.gem) = 48128
diff --git a/www/rubygem-actioncable-gitlab/pkg-descr b/www/rubygem-actioncable-gitlab/pkg-descr
new file mode 100644
index 000000000000..5d7feb3ca8cf
--- /dev/null
+++ b/www/rubygem-actioncable-gitlab/pkg-descr
@@ -0,0 +1,7 @@
+Action Cable seamlessly integrates WebSockets with the rest of your Rails
+application. It allows for real-time features to be written in Ruby in the same
+style and form as the rest of your Rails application, while still being
+performant and scalable. It's a full-stack offering that provides both a
+client-side JavaScript framework and a server-side Ruby framework. You have
+access to your full domain model written with Active Record or your ORM of
+choice.
diff --git a/www/rubygem-actionpack-gitlab/Makefile b/www/rubygem-actionpack-gitlab/Makefile
new file mode 100644
index 000000000000..c9a5845999ee
--- /dev/null
+++ b/www/rubygem-actionpack-gitlab/Makefile
@@ -0,0 +1,32 @@
+PORTNAME= actionpack
+PORTVERSION= ${RAILS_VERSION}
+CATEGORIES= www rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Action Controller and Action View of Rails MVC Framework
+WWW= https://github.com/rails/rails/tree/main/actionpack \
+ https://rubyonrails.org/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-actionview-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-actionview-gitlab \
+ rubygem-activesupport-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activesupport-gitlab \
+ rubygem-nokogiri>=1.8.5:textproc/rubygem-nokogiri \
+ rubygem-racc>=0:devel/rubygem-racc \
+ rubygem-rack22>=2.2.4,3:www/rubygem-rack22 \
+ rubygem-rack-session10>=1.0.1:www/rubygem-rack-session10 \
+ rubygem-rack-test>=0.6.3:www/rubygem-rack-test \
+ rubygem-rails-dom-testing-rails-gitlab>=2.2<3:textproc/rubygem-rails-dom-testing-rails-gitlab \
+ rubygem-rails-html-sanitizer>=1.6<2:textproc/rubygem-rails-html-sanitizer
+
+USES= gem
+
+NO_ARCH= yes
+
+PORTSCOUT= limit:^7\.1\.
+
+.include "${.CURDIR}/../../www/gitlab/Makefile.common"
+.include <bsd.port.mk>
diff --git a/www/rubygem-actionpack-gitlab/distinfo b/www/rubygem-actionpack-gitlab/distinfo
new file mode 100644
index 000000000000..f78deede4ac7
--- /dev/null
+++ b/www/rubygem-actionpack-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1734888824
+SHA256 (rubygem/actionpack-7.1.5.1.gem) = 2bc263d9f43f16cc3b3360f59659ab11f140577602f371f1a968e2672b38d718
+SIZE (rubygem/actionpack-7.1.5.1.gem) = 246272
diff --git a/www/rubygem-actionpack-gitlab/pkg-descr b/www/rubygem-actionpack-gitlab/pkg-descr
new file mode 100644
index 000000000000..2f8df748c74a
--- /dev/null
+++ b/www/rubygem-actionpack-gitlab/pkg-descr
@@ -0,0 +1,19 @@
+Action Pack is a framework for handling and responding to web requests. It
+provides mechanisms for routing (mapping request URLs to actions), defining
+controllers that implement actions, and generating responses. In short, Action
+Pack provides the controller layer in the MVC paradigm.
+
+It consists of several modules:
+- Action Dispatch, which parses information about the web request, handles
+ routing as defined by the user, and does advanced processing related to HTTP
+ such as MIME-type negotiation, decoding parameters in POST, PATCH, or PUT
+ bodies, handling HTTP caching logic, cookies and sessions.
+- Action Controller, which provides a base controller class that can be
+ subclassed to implement filters and actions to handle requests. The result of
+ an action is typically content generated from views.
+
+With the Ruby on Rails framework, users only directly interface with the Action
+Controller module. Necessary Action Dispatch functionality is activated by
+default and Action View rendering is implicitly triggered by Action Controller.
+However, these modules are designed to function on their own and can be used
+outside of Rails.
diff --git a/www/rubygem-cssbundling-rails-rails-gitlab/Makefile b/www/rubygem-cssbundling-rails-rails-gitlab/Makefile
new file mode 100644
index 000000000000..87c19ec0b992
--- /dev/null
+++ b/www/rubygem-cssbundling-rails-rails-gitlab/Makefile
@@ -0,0 +1,20 @@
+PORTNAME= cssbundling-rails
+PORTVERSION= 1.4.3
+CATEGORIES= www rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Bundle and process CSS with Tailwind, Bootstrap, PostCSS, Sass in Rails via Node.js
+WWW= https://github.com/rails/cssbundling-rails
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-railties-gitlab>=6.0.0:www/rubygem-railties-gitlab
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/www/rubygem-cssbundling-rails-rails-gitlab/distinfo b/www/rubygem-cssbundling-rails-rails-gitlab/distinfo
new file mode 100644
index 000000000000..f2cba7b71cfe
--- /dev/null
+++ b/www/rubygem-cssbundling-rails-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1742070756
+SHA256 (rubygem/cssbundling-rails-1.4.3.gem) = 53aecd5a7d24ac9c8fcd92975acd0e830fead4ee4583d3d3d49bb64651946e41
+SIZE (rubygem/cssbundling-rails-1.4.3.gem) = 11776
diff --git a/www/rubygem-cssbundling-rails-rails-gitlab/pkg-descr b/www/rubygem-cssbundling-rails-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..3bf0ef49a085
--- /dev/null
+++ b/www/rubygem-cssbundling-rails-rails-gitlab/pkg-descr
@@ -0,0 +1,12 @@
+Use Tailwind CSS, Bootstrap, Bulma, PostCSS, or Dart Sass to bundle and process
+your CSS, then deliver it via the asset pipeline in Rails. This gem provides
+installers to get you going with the bundler of your choice in a new Rails
+application, and a convention to use app/assets/builds to hold your bundled
+output as artifacts that are not checked into source control (the installer adds
+this directory to .gitignore by default).
+
+You develop using this approach by running the bundler in watch mode in a
+terminal with yarn build:css --watch (and your Rails server in another, if
+you're not using something like puma-dev). You can also use ./bin/dev, which
+will start both the Rails server and the CSS build watcher (along with a JS
+build watcher, if you're also using jsbundling-rails).
diff --git a/www/rubygem-gon-rails-gitlab/Makefile b/www/rubygem-gon-rails-gitlab/Makefile
new file mode 100644
index 000000000000..d233ce4c6716
--- /dev/null
+++ b/www/rubygem-gon-rails-gitlab/Makefile
@@ -0,0 +1,24 @@
+PORTNAME= gon
+PORTVERSION= 6.4.0
+CATEGORIES= www rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Framework to pass data to JS easily
+WWW= https://github.com/gazay/gon
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= rubygem-actionpack-gitlab>=3.0.20:www/rubygem-actionpack-gitlab \
+ rubygem-i18n>=0.7:devel/rubygem-i18n \
+ rubygem-multi_json>=0:devel/rubygem-multi_json \
+ rubygem-request_store>=1.0:devel/rubygem-request_store
+
+USES= cpe gem
+CPE_VENDOR= ${PORTNAME}_project
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/www/rubygem-gon-rails-gitlab/distinfo b/www/rubygem-gon-rails-gitlab/distinfo
new file mode 100644
index 000000000000..70a568978163
--- /dev/null
+++ b/www/rubygem-gon-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1619177531
+SHA256 (rubygem/gon-6.4.0.gem) = e3a618d659392890f1aa7db420f17c75fd7d35aeb5f8fe003697d02c4b88d2f0
+SIZE (rubygem/gon-6.4.0.gem) = 158720
diff --git a/www/rubygem-gon-rails-gitlab/pkg-descr b/www/rubygem-gon-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..f3dfc03b45c8
--- /dev/null
+++ b/www/rubygem-gon-rails-gitlab/pkg-descr
@@ -0,0 +1,2 @@
+If you need to send some data to your js files and you don't want to do this
+with long way trough views and parsing - use this force!
diff --git a/www/rubygem-kaminari-actionview-rails-gitlab/Makefile b/www/rubygem-kaminari-actionview-rails-gitlab/Makefile
new file mode 100644
index 000000000000..954983f1e9fa
--- /dev/null
+++ b/www/rubygem-kaminari-actionview-rails-gitlab/Makefile
@@ -0,0 +1,21 @@
+PORTNAME= kaminari-actionview
+PORTVERSION= 1.2.2
+CATEGORIES= www rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= ruby@FreeBSD.org
+COMMENT= Kaminari Action View adapter
+WWW= https://github.com/kaminari/kaminari/tree/master/kaminari-actionview
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-actionview-gitlab>=0:devel/rubygem-actionview-gitlab \
+ rubygem-kaminari-core>=${PORTVERSION}:www/rubygem-kaminari-core
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/www/rubygem-kaminari-actionview-rails-gitlab/distinfo b/www/rubygem-kaminari-actionview-rails-gitlab/distinfo
new file mode 100644
index 000000000000..9e9ced8bcaa2
--- /dev/null
+++ b/www/rubygem-kaminari-actionview-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1641046940
+SHA256 (rubygem/kaminari-actionview-1.2.2.gem) = 1330f6fc8b59a4a4ef6a549ff8a224797289ebf7a3a503e8c1652535287cc909
+SIZE (rubygem/kaminari-actionview-1.2.2.gem) = 6656
diff --git a/www/rubygem-kaminari-actionview-rails-gitlab/pkg-descr b/www/rubygem-kaminari-actionview-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..e0618fca67d8
--- /dev/null
+++ b/www/rubygem-kaminari-actionview-rails-gitlab/pkg-descr
@@ -0,0 +1 @@
+kaminari-actionview provides pagination helpers for your Action View templates.
diff --git a/www/rubygem-kaminari-activerecord-rails-gitlab/Makefile b/www/rubygem-kaminari-activerecord-rails-gitlab/Makefile
new file mode 100644
index 000000000000..b11458d6b41b
--- /dev/null
+++ b/www/rubygem-kaminari-activerecord-rails-gitlab/Makefile
@@ -0,0 +1,21 @@
+PORTNAME= kaminari-activerecord
+PORTVERSION= 1.2.2
+CATEGORIES= www rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= ruby@FreeBSD.org
+COMMENT= Kaminari Active Record adapter
+WWW= https://github.com/kaminari/kaminari/tree/master/kaminari-activerecord
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-activerecord-gitlab>=0:databases/rubygem-activerecord-gitlab \
+ rubygem-kaminari-core>=${PORTVERSION}:www/rubygem-kaminari-core
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/www/rubygem-kaminari-activerecord-rails-gitlab/distinfo b/www/rubygem-kaminari-activerecord-rails-gitlab/distinfo
new file mode 100644
index 000000000000..85db9296f918
--- /dev/null
+++ b/www/rubygem-kaminari-activerecord-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1641046950
+SHA256 (rubygem/kaminari-activerecord-1.2.2.gem) = 0dd3a67bab356a356f36b3b7236bcb81cef313095365befe8e98057dd2472430
+SIZE (rubygem/kaminari-activerecord-1.2.2.gem) = 8192
diff --git a/www/rubygem-kaminari-activerecord-rails-gitlab/pkg-descr b/www/rubygem-kaminari-activerecord-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..f668bf61ed99
--- /dev/null
+++ b/www/rubygem-kaminari-activerecord-rails-gitlab/pkg-descr
@@ -0,0 +1 @@
+kaminari-activerecord lets your Active Record models be paginatable.
diff --git a/www/rubygem-kaminari-rails-gitlab/Makefile b/www/rubygem-kaminari-rails-gitlab/Makefile
new file mode 100644
index 000000000000..70015842acd4
--- /dev/null
+++ b/www/rubygem-kaminari-rails-gitlab/Makefile
@@ -0,0 +1,25 @@
+PORTNAME= kaminari
+PORTVERSION= 1.2.2
+CATEGORIES= www rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= ruby@FreeBSD.org
+COMMENT= Sophisticated paginator for Rails 4+
+WWW= https://github.com/kaminari/kaminari
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-activesupport-gitlab>=4.1.0:devel/rubygem-activesupport-gitlab \
+ rubygem-kaminari-actionview-rails-gitlab>=${PORTVERSION}:www/rubygem-kaminari-actionview-rails-gitlab \
+ rubygem-kaminari-activerecord-rails-gitlab>=${PORTVERSION}:www/rubygem-kaminari-activerecord-rails-gitlab \
+ rubygem-kaminari-core>=${PORTVERSION}:www/rubygem-kaminari-core
+
+USES= cpe gem
+
+NO_ARCH= yes
+
+CPE_VENDOR= kaminari_project
+
+.include <bsd.port.mk>
diff --git a/www/rubygem-kaminari-rails-gitlab/distinfo b/www/rubygem-kaminari-rails-gitlab/distinfo
new file mode 100644
index 000000000000..f8e7efd0cf3a
--- /dev/null
+++ b/www/rubygem-kaminari-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1641046962
+SHA256 (rubygem/kaminari-1.2.2.gem) = c4076ff9adccc6109408333f87b5c4abbda5e39dc464bd4c66d06d9f73442a3e
+SIZE (rubygem/kaminari-1.2.2.gem) = 23552
diff --git a/www/rubygem-kaminari-rails-gitlab/pkg-descr b/www/rubygem-kaminari-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..9f20e0a09f60
--- /dev/null
+++ b/www/rubygem-kaminari-rails-gitlab/pkg-descr
@@ -0,0 +1,2 @@
+Kaminari is a Scope & Engine based, clean, powerful, agnostic, customizable and
+sophisticated paginator for Rails 3
diff --git a/www/rubygem-lograge-rails-gitlab/Makefile b/www/rubygem-lograge-rails-gitlab/Makefile
new file mode 100644
index 000000000000..be924d3cc367
--- /dev/null
+++ b/www/rubygem-lograge-rails-gitlab/Makefile
@@ -0,0 +1,22 @@
+PORTNAME= lograge
+PORTVERSION= 0.14.0
+CATEGORIES= www rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= ruby@FreeBSD.org
+COMMENT= Tame Rails' multi-line logging into a single line per request #'
+WWW= https://github.com/roidrage/lograge
+
+LICENSE= MIT
+
+RUN_DEPENDS= rubygem-actionpack-gitlab>=4:www/rubygem-actionpack-gitlab \
+ rubygem-activesupport-gitlab>=4:devel/rubygem-activesupport-gitlab \
+ rubygem-railties-gitlab>=4:www/rubygem-railties-gitlab \
+ rubygem-request_store>=1.0<2:devel/rubygem-request_store
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/www/rubygem-lograge-rails-gitlab/distinfo b/www/rubygem-lograge-rails-gitlab/distinfo
new file mode 100644
index 000000000000..e43a648f18f6
--- /dev/null
+++ b/www/rubygem-lograge-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1697030448
+SHA256 (rubygem/lograge-0.14.0.gem) = 42371a75823775f166f727639f5ddce73dd149452a55fc94b90c303213dc9ae1
+SIZE (rubygem/lograge-0.14.0.gem) = 11264
diff --git a/www/rubygem-lograge-rails-gitlab/pkg-descr b/www/rubygem-lograge-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..e7f52af2c168
--- /dev/null
+++ b/www/rubygem-lograge-rails-gitlab/pkg-descr
@@ -0,0 +1,6 @@
+Tame Rails' multi-line logging into a single line per request
+
+Lograge is an attempt to bring sanity to Rails' noisy and unusable, unparsable
+and, in the context of running multiple processes and servers, unreadable
+default logging output. Rails' default approach to log everything is great
+during development, it's terrible when running it in production.
diff --git a/www/rubygem-rails-gitlab/Makefile b/www/rubygem-rails-gitlab/Makefile
new file mode 100644
index 000000000000..fad6645b5e89
--- /dev/null
+++ b/www/rubygem-rails-gitlab/Makefile
@@ -0,0 +1,49 @@
+PORTNAME= rails
+PORTVERSION= ${RAILS_VERSION}
+CATEGORIES= www rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Full-stack web application framework
+WWW= https://rubyonrails.org/ \
+ https://github.com/rails/rails
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-actioncable-gitlab>=${PORTVERSION}<${PORTVERSION}_99:www/rubygem-actioncable-gitlab \
+ rubygem-actionmailbox-gitlab>=${PORTVERSION}<${PORTVERSION}_99:mail/rubygem-actionmailbox-gitlab \
+ rubygem-actionmailer-gitlab>=${PORTVERSION}<${PORTVERSION}_99:mail/rubygem-actionmailer-gitlab \
+ rubygem-actionpack-gitlab>=${PORTVERSION}<${PORTVERSION}_99:www/rubygem-actionpack-gitlab \
+ rubygem-actiontext-gitlab>=${PORTVERSION}<${PORTVERSION}_99:textproc/rubygem-actiontext-gitlab \
+ rubygem-actionview-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-actionview-gitlab \
+ rubygem-activejob-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activejob-gitlab \
+ rubygem-activemodel-gitlab>=${PORTVERSION}<${PORTVERSION}_99:databases/rubygem-activemodel-gitlab \
+ rubygem-activerecord-gitlab>=${PORTVERSION}<${PORTVERSION}_99:databases/rubygem-activerecord-gitlab \
+ rubygem-activestorage-gitlab>=${PORTVERSION}<${PORTVERSION}_99:net/rubygem-activestorage-gitlab \
+ rubygem-activesupport-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activesupport-gitlab \
+ rubygem-bundler>=1.15.0:sysutils/rubygem-bundler \
+ rubygem-railties-gitlab>=${PORTVERSION}<${PORTVERSION}_99:www/rubygem-railties-gitlab
+
+USES= cpe gem
+
+NO_ARCH= yes
+
+CPE_VENDOR= rubyonrails
+CPE_PRODUCT= ruby_on_rails
+
+PORTSCOUT= limit:^7\.1\.
+
+.include <bsd.port.pre.mk>
+
+.if ${RUBY_VER} <= 3.1
+RUN_DEPENDS+= rubygem-cgi>=0.3.6:www/rubygem-cgi
+.endif
+
+.if ${RUBY_VER} == 3.1
+RUN_DEPENDS+= rubygem-error_highlight>=0.4.0:devel/rubygem-error_highlight
+.endif
+
+.include "${.CURDIR}/../../www/gitlab/Makefile.common"
+.include <bsd.port.post.mk>
diff --git a/www/rubygem-rails-gitlab/distinfo b/www/rubygem-rails-gitlab/distinfo
new file mode 100644
index 000000000000..1ca3ce97bc6c
--- /dev/null
+++ b/www/rubygem-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1734888826
+SHA256 (rubygem/rails-7.1.5.1.gem) = 05aea2ed7b6392b41ce0fc11455de118455025a431b6ea334a7ac2b101608804
+SIZE (rubygem/rails-7.1.5.1.gem) = 7168
diff --git a/www/rubygem-rails-gitlab/pkg-descr b/www/rubygem-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..5936b0adc42e
--- /dev/null
+++ b/www/rubygem-rails-gitlab/pkg-descr
@@ -0,0 +1,23 @@
+Rails is a web-application framework that includes everything needed to create
+database-backed web applications according to the Model-View-Controller (MVC)
+pattern.
+
+Understanding the MVC pattern is key to understanding Rails. MVC divides your
+application into three layers: Model, View, and Controller, each with a specific
+responsibility.
+
+Active Record, Active Model, Action Pack, and Action View can each be used
+independently outside Rails.
+
+In addition to that, Rails also comes with:
+- Action Mailer, a library to generate and send emails
+- Action Mailbox, a library to receive emails within a Rails application
+- Active Job, a framework for declaring jobs and making them run on a variety of
+ queuing backends
+- Action Cable, a framework to integrate WebSockets with a Rails application
+- Active Storage, a library to attach cloud and local files to Rails
+ applications
+- Action Text, a library to handle rich text content
+- Active Support, a collection of utility classes and standard library
+ extensions that are useful for Rails, and may also be used independently
+ outside Rails
diff --git a/www/rubygem-railties-gitlab/Makefile b/www/rubygem-railties-gitlab/Makefile
new file mode 100644
index 000000000000..0ad939166601
--- /dev/null
+++ b/www/rubygem-railties-gitlab/Makefile
@@ -0,0 +1,36 @@
+PORTNAME= railties
+PORTVERSION= ${RAILS_VERSION}
+CATEGORIES= www rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Rails internals: application bootup, plugins, generators, and rake tasks
+WWW= https://github.com/rails/rails/tree/master/railties \
+ https://rubyonrails.org/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-actionpack-gitlab>=${PORTVERSION}<${PORTVERSION}_99:www/rubygem-actionpack-gitlab \
+ rubygem-activesupport-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activesupport-gitlab \
+ rubygem-irb-gitlab>=0:devel/rubygem-irb-gitlab \
+ rubygem-rackup10>=1.0.0:www/rubygem-rackup10 \
+ rubygem-rake>=12.2:devel/rubygem-rake \
+ rubygem-thor>=1.2.2<2:devel/rubygem-thor \
+ rubygem-zeitwerk>=2.6<3:devel/rubygem-zeitwerk
+
+USES= gem shebangfix
+
+NO_ARCH= yes
+
+PLIST_FILES= bin/rails
+
+CONFLICTS_INSTALL= rubygem-railties[0-9] rubygem-railties[0-9][0-9]
+
+PORTSCOUT= limit:^7\.1\.
+
+SHEBANG_FILES= lib/rails/generators/rails/app/templates/docker-entrypoint.tt
+
+.include "${.CURDIR}/../../www/gitlab/Makefile.common"
+.include <bsd.port.mk>
diff --git a/www/rubygem-railties-gitlab/distinfo b/www/rubygem-railties-gitlab/distinfo
new file mode 100644
index 000000000000..0650bb7c3d47
--- /dev/null
+++ b/www/rubygem-railties-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1734888828
+SHA256 (rubygem/railties-7.1.5.1.gem) = 0be15562e2ded4efdc1b6c30f884b6d838c9ba49573dde042334b752b043e2fb
+SIZE (rubygem/railties-7.1.5.1.gem) = 182272
diff --git a/www/rubygem-railties-gitlab/pkg-descr b/www/rubygem-railties-gitlab/pkg-descr
new file mode 100644
index 000000000000..fbc0144b3be4
--- /dev/null
+++ b/www/rubygem-railties-gitlab/pkg-descr
@@ -0,0 +1,4 @@
+Railties is responsible for gluing all frameworks together. Overall, it:
+- handles the bootstrapping process for a Rails application;
+- manages the rails command line interface;
+- and provides the Rails generators core.
diff --git a/www/rubygem-redis-rack-gitlab/Makefile b/www/rubygem-redis-rack-gitlab/Makefile
new file mode 100644
index 000000000000..f330ace9ea51
--- /dev/null
+++ b/www/rubygem-redis-rack-gitlab/Makefile
@@ -0,0 +1,25 @@
+PORTNAME= redis-rack
+PORTVERSION= 3.0.0
+CATEGORIES= www rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Redis Store for Rack
+WWW= https://redis-store.org/redis-rack/ \
+ https://github.com/redis-store/redis-rack
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-rack-session10>=0.2.0:www/rubygem-rack-session10 \
+ rubygem-redis-store>=1.2<2:devel/rubygem-redis-store
+
+USES= gem
+
+NO_ARCH= yes
+
+post-install:
+ ${RM} ${STAGEDIR}${PREFIX}/bin/appraisal ${STAGEDIR}${PREFIX}/bin/rake
+
+.include <bsd.port.mk>
diff --git a/www/rubygem-redis-rack-gitlab/distinfo b/www/rubygem-redis-rack-gitlab/distinfo
new file mode 100644
index 000000000000..fc78f75e6b06
--- /dev/null
+++ b/www/rubygem-redis-rack-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1702028346
+SHA256 (rubygem/redis-rack-3.0.0.gem) = abb50b82ae10ad4d11ca2e4901bfc2b98256cdafbbd95f80c86fc9e001478380
+SIZE (rubygem/redis-rack-3.0.0.gem) = 14336
diff --git a/www/rubygem-redis-rack-gitlab/pkg-descr b/www/rubygem-redis-rack-gitlab/pkg-descr
new file mode 100644
index 000000000000..d487558f190f
--- /dev/null
+++ b/www/rubygem-redis-rack-gitlab/pkg-descr
@@ -0,0 +1 @@
+Redis Store for Rack
diff --git a/www/rubygem-responders-rails-gitlab/Makefile b/www/rubygem-responders-rails-gitlab/Makefile
new file mode 100644
index 000000000000..63db73157e24
--- /dev/null
+++ b/www/rubygem-responders-rails-gitlab/Makefile
@@ -0,0 +1,21 @@
+PORTNAME= responders
+PORTVERSION= 3.1.1
+CATEGORIES= www rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= -rails-gitlab
+
+MAINTAINER= mfechner@FreeBSD.org
+COMMENT= Simple Ruby DSL for making HTTP requests
+WWW= https://github.com/heartcombo/responders
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/MIT-LICENSE
+
+RUN_DEPENDS= rubygem-actionpack-gitlab>=5.2:www/rubygem-actionpack-gitlab \
+ rubygem-railties-gitlab>=5.2:www/rubygem-railties-gitlab
+
+USES= gem
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/www/rubygem-responders-rails-gitlab/distinfo b/www/rubygem-responders-rails-gitlab/distinfo
new file mode 100644
index 000000000000..6731238316f3
--- /dev/null
+++ b/www/rubygem-responders-rails-gitlab/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1714227796
+SHA256 (rubygem/responders-3.1.1.gem) = 92f2a87e09028347368639cfb468f5fefa745cb0dc2377ef060db1cdd79a341a
+SIZE (rubygem/responders-3.1.1.gem) = 20480
diff --git a/www/rubygem-responders-rails-gitlab/pkg-descr b/www/rubygem-responders-rails-gitlab/pkg-descr
new file mode 100644
index 000000000000..22f8e4f8553b
--- /dev/null
+++ b/www/rubygem-responders-rails-gitlab/pkg-descr
@@ -0,0 +1 @@
+Responders provides a set of responders modules to dry up your Rails app.