diff --git a/rails/erb-lint.yml b/rails/erb-lint.yml
deleted file mode 100644
index 7db595afb110c6cb1457ae847eb018ce40f351f3..0000000000000000000000000000000000000000
--- a/rails/erb-lint.yml
+++ /dev/null
@@ -1,30 +0,0 @@
-glob: '**/*.{html,text,js}{+*,}.erb'
-exclude:
-  - '**/vendor/**/*'
-EnableDefaultLinters: true
-linters:
-  ErbSafety:
-    enabled: true
-  FinalNewline:
-    enabled: true
-  Rubocop:
-    enabled: true
-    rubocop_config:
-      inherit_from:
-        - .rubocop.yml
-      Layout/InitialIndentation:
-        Enabled: false
-      Layout/LineLength:
-        Enabled: false
-      Layout/TrailingEmptyLines:
-        Enabled: false
-      Layout/TrailingWhitespace:
-        Enabled: false
-      Naming/FileName:
-        Enabled: false
-      Style/FrozenStringLiteralComment:
-        Enabled: false
-      Lint/UselessAssignment:
-        Enabled: false
-      Rails/OutputSafety:
-        Enabled: false
diff --git a/rails/erb_lint.yml b/ruby/erb_lint.yml
similarity index 100%
rename from rails/erb_lint.yml
rename to ruby/erb_lint.yml
diff --git a/rails/gitlab-ci-for-gem.yml b/ruby/gitlab-ci-for-gem.yml
similarity index 83%
rename from rails/gitlab-ci-for-gem.yml
rename to ruby/gitlab-ci-for-gem.yml
index 785f731e1de4dd33abdb4d2ab78d632e4248fb23..b20b0344fa0b525a2378cc9353a5b84f03927399 100644
--- a/rails/gitlab-ci-for-gem.yml
+++ b/ruby/gitlab-ci-for-gem.yml
@@ -17,7 +17,7 @@ rubocop:
   tags:
     - gem
   script:
-    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/rubocop.yml" -O ".rubocop.yml"
+    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/ruby/rubocop-for-gem.yml" -O ".rubocop.yml"
     - gem install rubocop:1.75.6 rubocop-capybara:2.22.1 rubocop-minitest:0.38.0 rubocop-performance:1.25.0 rubocop-rails:2.31.0 --silent
     - gem install itc-gem_rubocop:0.1.4 --source=https://noc-portal.itc.rwth-aachen.de/geminabox --silent
     - rubocop
@@ -28,8 +28,8 @@ erb_lint:
   tags:
     - gem
   script:
-    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/rubocop.yml" -O ".rubocop.yml"
-    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/erb_lint.yml" -O ".erb_lint.yml"
+    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/ruby/rubocop-for-gem.yml" -O ".rubocop.yml"
+    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/ruby/erb_lint.yml" -O ".erb_lint.yml"
     - gem install rubocop:1.75.6 rubocop-capybara:2.22.1 rubocop-minitest:0.38.0 rubocop-performance:1.25.0 rubocop-rails:2.31.0 erb_lint:0.9.0 --silent
     - gem install itc-gem_rubocop:0.1.4 --source=https://noc-portal.itc.rwth-aachen.de/geminabox --silent
     - erb_lint --lint-all --allow-no-files true
@@ -40,8 +40,8 @@ haml_lint:
   tags:
     - gem
   script:
-    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/rubocop.yml" -O ".rubocop.yml"
-    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/haml-lint.yml" -O ".haml-lint.yml"
+    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/ruby/rubocop-for-gem.yml" -O ".rubocop.yml"
+    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/ruby/haml-lint.yml" -O ".haml-lint.yml"
     - gem install rubocop:1.75.6 rubocop-capybara:2.22.1 rubocop-minitest:0.38.0 rubocop-performance:1.25.0 rubocop-rails:2.31.0 haml_lint:0.62.0 --silent
     - gem install itc-gem_rubocop:0.1.4 --source=https://noc-portal.itc.rwth-aachen.de/geminabox --silent
     - haml-lint
diff --git a/rails/gitlab-ci.yml b/ruby/gitlab-ci-for-rails.yml
similarity index 88%
rename from rails/gitlab-ci.yml
rename to ruby/gitlab-ci-for-rails.yml
index 0436d81f111f7fcbe55ba562c9ae8f48cbdae375..b253945a96f14a3823f378506cbf40fba5c1fef9 100644
--- a/rails/gitlab-ci.yml
+++ b/ruby/gitlab-ci-for-rails.yml
@@ -17,7 +17,7 @@ rubocop:
   tags:
     - rails
   script:
-    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/rubocop.yml" -O ".rubocop.yml"
+    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/ruby/rubocop-for-rails.yml" -O ".rubocop.yml"
     - gem install rubocop:1.75.6 rubocop-capybara:2.22.1 rubocop-minitest:0.38.0 rubocop-performance:1.25.0 rubocop-rails:2.31.0 --silent
     - gem install itc-gem_rubocop:0.1.4 --source=https://noc-portal.itc.rwth-aachen.de/geminabox --silent
     - rubocop
@@ -28,8 +28,8 @@ erb_lint:
   tags:
     - rails
   script:
-    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/rubocop.yml" -O ".rubocop.yml"
-    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/erb_lint.yml" -O ".erb_lint.yml"
+    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/ruby/rubocop-for-rails.yml" -O ".rubocop.yml"
+    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/ruby/erb_lint.yml" -O ".erb_lint.yml"
     - gem install rubocop:1.75.6 rubocop-capybara:2.22.1 rubocop-minitest:0.38.0 rubocop-performance:1.25.0 rubocop-rails:2.31.0 erb_lint:0.9.0 --silent
     - gem install itc-gem_rubocop:0.1.4 --source=https://noc-portal.itc.rwth-aachen.de/geminabox --silent
     - erb_lint --lint-all --allow-no-files true
@@ -40,8 +40,8 @@ haml_lint:
   tags:
     - rails
   script:
-    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/rubocop.yml" -O ".rubocop.yml"
-    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/haml-lint.yml" -O ".haml-lint.yml"
+    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/ruby/rubocop-for-rails.yml" -O ".rubocop.yml"
+    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/ruby/haml-lint.yml" -O ".haml-lint.yml"
     - gem install rubocop:1.75.6 rubocop-capybara:2.22.1 rubocop-minitest:0.38.0 rubocop-performance:1.25.0 rubocop-rails:2.31.0 haml_lint:0.62.0 --silent
     - gem install itc-gem_rubocop:0.1.4 --source=https://noc-portal.itc.rwth-aachen.de/geminabox --silent
     - haml-lint
diff --git a/ruby/gitlab-ci-for-ruby-script.yml b/ruby/gitlab-ci-for-ruby-script.yml
new file mode 100644
index 0000000000000000000000000000000000000000..7096e9040e69501559dbb476213803a3d0250cc2
--- /dev/null
+++ b/ruby/gitlab-ci-for-ruby-script.yml
@@ -0,0 +1,35 @@
+variables:
+  CI: "true"
+  RAILS_ENV: test
+
+set_ruby_version:
+  stage: build
+  script:
+    - echo "RUBY_VERSION=$(cat .ruby-version | sed 's/ruby-//g')" >> build.env
+  artifacts:
+    reports:
+      dotenv: build.env
+    expire_in: 1 week
+
+rubocop:
+  stage: test
+  image: ruby:$RUBY_VERSION
+  tags:
+    - gem
+  script:
+    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/ruby/rubocop-for-ruby-script.yml" -O ".rubocop.yml"
+    - gem install rubocop:1.75.6 rubocop-minitest:0.38.0 rubocop-performance:1.25.0 --silent
+    - gem install itc-gem_rubocop:0.1.4 --source=https://noc-portal.itc.rwth-aachen.de/geminabox --silent
+    - rubocop
+
+erb_lint:
+  stage: test
+  image: ruby:$RUBY_VERSION
+  tags:
+    - gem
+  script:
+    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/ruby/rubocop-for-ruby-script.yml" -O ".rubocop.yml"
+    - wget --quiet "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/ruby/erb_lint.yml" -O ".erb_lint.yml"
+    - gem install rubocop:1.75.6 rubocop-minitest:0.38.0 rubocop-performance:1.25.0 erb_lint:0.9.0 --silent
+    - gem install itc-gem_rubocop:0.1.4 --source=https://noc-portal.itc.rwth-aachen.de/geminabox --silent
+    - erb_lint --lint-all --allow-no-files true
diff --git a/rails/haml-lint.yml b/ruby/haml-lint.yml
similarity index 100%
rename from rails/haml-lint.yml
rename to ruby/haml-lint.yml
diff --git a/rails/rubocop-for-gem.yml b/ruby/rubocop-for-gem.yml
similarity index 89%
rename from rails/rubocop-for-gem.yml
rename to ruby/rubocop-for-gem.yml
index 65dbc8c630f20d2e637b8669eb1b663f46ef17f7..d256eb52ab87b18796c6eca5cd95ac81f7f816a7 100644
--- a/rails/rubocop-for-gem.yml
+++ b/ruby/rubocop-for-gem.yml
@@ -1,4 +1,5 @@
 inherit_from: "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/rubocop/rubocop-base.yml"
+inherit_from: "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/rubocop/rubocop-rails.yml"
 
 plugins:
   - rubocop-packaging
diff --git a/rails/rubocop.yml b/ruby/rubocop-for-rails.yml
similarity index 78%
rename from rails/rubocop.yml
rename to ruby/rubocop-for-rails.yml
index f4b56af8e23068818bef80ec936e3c3794dd3b20..ab043d9abe953f66ebb67e118829aee5208bc67b 100644
--- a/rails/rubocop.yml
+++ b/ruby/rubocop-for-rails.yml
@@ -1,11 +1,12 @@
 inherit_from: "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/rubocop/rubocop-base.yml"
+inherit_from: "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/rubocop/rubocop-rails.yml"
 
 plugins:
   - itc-gem_rubocop
   - rubocop-capybara
 
-# gem "itc-gem_rubocop", "0.1.3", require: false
-# gem "rubocop", "1.75.3", require: false
+# gem "itc-gem_rubocop", "0.1.4", require: false
+# gem "rubocop", "1.75.6", require: false
 # gem "rubocop-capybara", "2.22.1", require: false
 # gem "rubocop-minitest", "0.38.0", require: false
 # gem "rubocop-performance", "1.25.0", require: false
diff --git a/ruby/rubocop-for-ruby-script.yml b/ruby/rubocop-for-ruby-script.yml
new file mode 100644
index 0000000000000000000000000000000000000000..dbedb3f488062c249b06a550c8ccf1a0501a94ab
--- /dev/null
+++ b/ruby/rubocop-for-ruby-script.yml
@@ -0,0 +1,5 @@
+inherit_from: "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/rubocop/rubocop-base.yml"
+
+# gem "rubocop", "1.75.6", require: false
+# gem "rubocop-minitest", "0.38.0", require: false
+# gem "rubocop-performance", "1.25.0", require: false
diff --git a/rails/rubocop-inherit.yml b/ruby/rubocop-inherit-itc-gem_ci.yml
similarity index 53%
rename from rails/rubocop-inherit.yml
rename to ruby/rubocop-inherit-itc-gem_ci.yml
index b9698f357d877928714167e9548bb64008cfb9f5..1589a31ca879aca4937d16f84b457c868208150f 100644
--- a/rails/rubocop-inherit.yml
+++ b/ruby/rubocop-inherit-itc-gem_ci.yml
@@ -1 +1 @@
-inherit_from: "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/rubocop.yml"
+inherit_from: "https://git-ce.rwth-aachen.de/noc-public/noc-netze-gitlab-cicd/-/raw/main/rails/rubocop-for-rails.yml"
diff --git a/rails/rubocop/rubocop-base.yml b/ruby/rubocop/rubocop-base.yml
similarity index 85%
rename from rails/rubocop/rubocop-base.yml
rename to ruby/rubocop/rubocop-base.yml
index cb2bc50ed4fcc9d623c30da60f04fd671689264b..0c82e15b5c14960aca0505625a03517f8d6b2c19 100644
--- a/rails/rubocop/rubocop-base.yml
+++ b/ruby/rubocop/rubocop-base.yml
@@ -2,12 +2,10 @@
 plugins:
   - rubocop-minitest
   - rubocop-performance
-  - rubocop-rails
 
-# gem "rubocop", "1.75.2", require: false
+# gem "rubocop", "1.75.6", require: false
 # gem "rubocop-minitest", "0.38.0", require: false
 # gem "rubocop-performance", "1.25.0", require: false
-# gem "rubocop-rails", "2.31.0", require: false
 AllCops:
   NewCops: enable # pending cops get enabled by default and must be disabled by hand, if needed
 
@@ -98,33 +96,6 @@ Minitest/MultipleAssertions:
 # END Minitest
 
 
-# BEGIN Rails
-# exclude API namespace, but not others (ITC convention)
-Rails/ApplicationController:
-  Exclude: ['app/controllers/api/**/*', 'app/controllers/a_p_i/**/*']
-
-# exclude migrations since non-ApplicationRecord behavior might be desired
-Rails/ApplicationRecord:
-  Exclude: ['db/migrate/*']
-
-# ensure paths are built using a filesystem agnostic way, i.e. arguments instead of a single string
-Rails/FilePath:
-  EnforcedStyle: arguments # default: slashes
-
-# no reason not to use an established Rails feature if developers see fit
-Rails/HasAndBelongsToMany:
-  Enabled: false
-
-# prevent puts, but exclude test, config, db since Rails Logger may not have been loaded
-Rails/Output:
-  Exclude: *test_config_db_gemspec
-
-# allow usage of methods that skip validations; we trust developers know what they are doing
-Rails/SkipsModelValidations:
-  Enabled: false
-# END Rails
-
-
 # BEGIN Style
 # prevent getting around most cops, but allow a few that may be impossible to resolve otherwise, f.e.:
 # ItcGemRubocop/DevelopmentHosts: allow usage of different `config.hosts` config in development, if needed
diff --git a/ruby/rubocop/rubocop-rails.yml b/ruby/rubocop/rubocop-rails.yml
new file mode 100644
index 0000000000000000000000000000000000000000..98703724bd03fc7598ac47c3fa4e76a8919fe89c
--- /dev/null
+++ b/ruby/rubocop/rubocop-rails.yml
@@ -0,0 +1,30 @@
+plugins:
+  - rubocop-rails
+
+# gem "rubocop-rails", "2.31.0", require: false
+
+# BEGIN Rails
+# exclude API namespace, but not others (ITC convention)
+Rails/ApplicationController:
+  Exclude: ['app/controllers/api/**/*', 'app/controllers/a_p_i/**/*']
+
+# exclude migrations since non-ApplicationRecord behavior might be desired
+Rails/ApplicationRecord:
+  Exclude: ['db/migrate/*']
+
+# ensure paths are built using a filesystem agnostic way, i.e. arguments instead of a single string
+Rails/FilePath:
+  EnforcedStyle: arguments # default: slashes
+
+# no reason not to use an established Rails feature if developers see fit
+Rails/HasAndBelongsToMany:
+  Enabled: false
+
+# prevent puts, but exclude test, config, db since Rails Logger may not have been loaded
+Rails/Output:
+  Exclude: *test_config_db_gemspec
+
+# allow usage of methods that skip validations; we trust developers know what they are doing
+Rails/SkipsModelValidations:
+  Enabled: false
+# END Rails
\ No newline at end of file