From 06aa9da3f7a3e149d72bf7c0575f01386c909443 Mon Sep 17 00:00:00 2001 From: Manuel Friedli Date: Mon, 21 Jul 2014 11:53:29 +0200 Subject: [PATCH] added ebuild for gitlabhq-7.0.0; it builds. --- www-apps/gitlabhq/Manifest | 5 +- ...gitlabhq-7.0.0-email-custom-reply_to.patch | 39 ++++++++ .../files/gitlabhq-7.0.0-fix-gemfile.patch | 88 +++++++++++++++++++ .../gitlabhq-7.0.0-ldap-custom-mapping.patch | 84 ++++++++++++++++++ www-apps/gitlabhq/gitlabhq-7.0.0.ebuild | 8 +- 5 files changed, 218 insertions(+), 6 deletions(-) create mode 100644 www-apps/gitlabhq/files/gitlabhq-7.0.0-email-custom-reply_to.patch create mode 100644 www-apps/gitlabhq/files/gitlabhq-7.0.0-fix-gemfile.patch create mode 100644 www-apps/gitlabhq/files/gitlabhq-7.0.0-ldap-custom-mapping.patch diff --git a/www-apps/gitlabhq/Manifest b/www-apps/gitlabhq/Manifest index 98c8722..4d904de 100644 --- a/www-apps/gitlabhq/Manifest +++ b/www-apps/gitlabhq/Manifest @@ -32,6 +32,9 @@ AUX gitlabhq-6.7.5-ldap-custom-mapping.patch 2992 SHA256 0fa8d8225552b0a2305f287 AUX gitlabhq-6.8.2-fix-gemfile-lock.patch 340 SHA256 524b7524b61c61978430442e0d13bc39f1e324ad7d1bc33308f82094e53acfa2 SHA512 d60c42f11b32bc87de84a4ddf122339ae39bf29d5e921175b510c86fb02a0f216c9f4a55d4653618893f82fca1b28eb77ad4fa35a0cdbf9f5275c004cb91e41b WHIRLPOOL ce9a734daa468e55ddb69193f8c1bfd84462167bbd0b921c79636de916e11bef986df39a3d51a1188e3bb0b83084966d36fc8f8cc6501dc21ab78d0c8b0d98da AUX gitlabhq-6.8.2-fix-gemfile.patch 2073 SHA256 6cccaba8d4483e4e8390ec518e474e2137985d490163cfcc0cef090fc80e0277 SHA512 75c21c7c5103d13009427739d591a268b7d9d43add0a3d0c2f3188a054c0963a4b525c024664732ad6ff5429adddfde49d98b74285a0de21c351143692839b73 WHIRLPOOL 4ec488ae566c5781eff17cead6c83002ef4a5055c02f3bf07ed8955985a8e3b7fe61fd4b5b116e4cb74787fb4b3f9caa820a9c67b297c007eed7f0be2d461261 AUX gitlabhq-6.8.2-ldap-custom-mapping.patch 2579 SHA256 82aaae2c64554e9c00dfb8f1d66884512f509752c74b03fe430d3ba7e7a5c18d SHA512 82e1900473b96d0067b477f76fae7445dc000a520bebe0f9cbdd7e02063b146005aa63594f508e3a592e89b04ac26b425b8a186bbd474b538c918d74c6abb9a7 WHIRLPOOL 953ddf4b70a9caf29afeaee50939c3bc3ec4a4f53cb484f50f151e7a8d6ab2d03303deb4c26c931fa836fa84b5935522630ffed7d266fcd9cb6982a6148e6882 +AUX gitlabhq-7.0.0-email-custom-reply_to.patch 1814 SHA256 7db95e36e2ef661f846209a612affc0e6276894bce6abf7acc686cd2398c76a5 SHA512 64aa56d83a9ccafaeafd808436e19388450ef7b6aff9bc1406e84033f624993923446a83bea32ec8987addb9c0ccb0d65ed9dc7cc30f181183634d8d5610aa2e WHIRLPOOL 5f23b4e7c2b482314f826508c50e9845e042e9a6b5d85f3f49f7db9ed140a35a9d07967f9b6a5c7dea481ad7e4dd5d682b4734921cc3adc0c4e37822ad4db234 +AUX gitlabhq-7.0.0-fix-gemfile.patch 2185 SHA256 48070f5cd7e16ce27abad8e2cf80493add671cd1383c758e5fffa696ed9452bc SHA512 f4cd487e17153f6cc60219f76df54574102b2ec2b154b2b9ddbf142a9e9d0188d3a8b4dbdec284d6b6be01a9c242d083440f50e8ced83f7c726fa2cce98720dd WHIRLPOOL fd9c550339bbf953d9bdc46cbc7552883a5eaafea60a0778e0dea4cc00defe548283b9ada02982f7063005233c72081623c1ef18f499ad5d6acf544af424da46 +AUX gitlabhq-7.0.0-ldap-custom-mapping.patch 2708 SHA256 8592744ba8b373b2e89c76d7ceb6c755bd46e2c2de6143b3f1d9967e4b6e5fb3 SHA512 a172444da26ddc9dfebe0c0ead4a2eb73a77ac44dfd9b3dbcf2b3faa679d963db080d2979d707e337b99f8e6384ccfd323f5d6e70921d193e99db75a4ba45b38 WHIRLPOOL d25e1f78342c781d26b84c09bd7eba08b46375c2f353b358f838602253dc2fe57807a437fc0c2891a6bc2893eba0bb278bd605ab8b6c837101a783c84536095b DIST gitlabhq-6.7.5.tar.gz 10229484 SHA256 547ed2807cccf08c11450a9df035dad8db66ab9f9d693db29e3aa1ee65edbae0 SHA512 a90c0cd3954bf20ece9e98626216a42afcb0cc07e0cb23874ab2065757805ac38a8dcf4e93d804a33caeecaf2c6e94d8566f5700cd4161ef9a0aaac089b9ded8 WHIRLPOOL 4d8f5ff3a1245c5e13fc3ff8f819160017dd4dba9f6a48c0f851272da5c97f45162d3e53f327002f1ecde7f31dd5f392bed8503b1b306d913bf63827777cdbcd DIST gitlabhq-6.8.2.tar.gz 10558471 SHA256 db9400d5ffadd3564bbee6e388c90d7f4c8f88450e67213aad11df2d137534ec SHA512 0f57c6bb3b9e89a5bbf7ae4c774e54480518f185f2e50270a7dd921eb2a2322f3e6866ca70741582fad4f99b372ba025fbab15108c291d53ebf04cfaec2f9b75 WHIRLPOOL 73ebd0fb0faef7afd48398ec4e73c8f4175f3dc2a9450ae391b4d3a66b54e0d77f901f518738eb98cc267691559094d4ebecd4c0a7c18fa671c3a1aee4dfe4d2 DIST gitlabhq-6.9.2.tar.gz 10566288 SHA256 2c01b223c3e889c7a45d3815f352c0546a337286d395e4d49df5ecedc1a57dc0 SHA512 b51b4e261666c14f782ce7edbbda24b6d32bb080c5444249f5c38e5233398b30f50a17cc8cbee18d75e57ba11ec3deeab4ffd1a6d6257c1858f8fe63e5138e54 WHIRLPOOL a3b9a8149fab69443b769aa145eb2c9a99bfc9f4a080edf0a6bd46c4771247b6f1c729bf5185e63bf63a02d654145362b7c8e9fefef6f0cdf1f4f30a32cf9dcb @@ -39,4 +42,4 @@ DIST gitlabhq-7.0.0.tar.gz 10678947 SHA256 72f0585cb54c70d1da6ca8e705e19cb3715cf EBUILD gitlabhq-6.7.5.ebuild 10983 SHA256 79fe5e03f1f03625a27d5ef398bb4d40e991c71490eda27913529bcdebf03b5d SHA512 73d035742868747f4d1dbbdce0d2892e29bbea3fd2938a66d16c9c72e3ec6075c9faa855b8a46b7970a8879e9633a25b65d70f3cc9eb77a2656bcbcca64f6008 WHIRLPOOL b8a9531f544799a141b7c6ddfaea6cce5d2643832c38326ff13bb3ed37f009b0bb1aeeba3d1d2434d2e59b43747c380ea505fbebb1a082da94a4e2322f20f4bf EBUILD gitlabhq-6.8.2.ebuild 10605 SHA256 5a7e869aee5481f5c610c81a130ea677de4977d4fc184839b3f7ce16152dacb4 SHA512 3f63b20e111e74d183e36acaa9499287801b18e53f4a1f0e0271f2d93625bf9b311e3a1634e2426965cefd7fe9d2a86114b71ba32f91abded11bd0234ebc87f8 WHIRLPOOL 3f77d6e351f6552932efbe40af389069bda3e44933a0ab426663574ff490665e7ae9a8cfc2726e378073816de7423e8c8269e3cee01b0a64299044a1f99d4811 EBUILD gitlabhq-6.9.2.ebuild 10626 SHA256 488e0eb23fa551d6c1968f20cff1a259074d719b22a3c8d8b4c337c994756903 SHA512 38e2015a6c677013042717492087943998cb5226a06d905f47beebecde8e6c6f46a6aa605aa27c29850b6610394fb04ba8d486cc8630211fa0333b5a3bdd376a WHIRLPOOL 4831f5ac06c2c1f3a0b293e97ff615f049826c09f6b225c0a25b3cf7780bd23321381056bc4ba0f53effa90f1066202a3b991a417dc8ce77db7bca429edbfa28 -EBUILD gitlabhq-7.0.0.ebuild 10626 SHA256 e971b80a0f4d56ddaf15e495f3aaa25c6d64fa87da43d3465822f3b0d3fea9ac SHA512 ce15677515f03f07965a4d271863a4435bb0db77a2861e59ef04c2d07bbf0b33bd7dbdda031a60677609273ecf6a45de716c9682d9c8000364383789aabb1768 WHIRLPOOL 2e1e26f6eabfbd691e7145edcec09d716d17122560dbb5b269c34db86f68634cc0b2e3d0cf53be5948fb2aaae2119325f308c830f77a6a9c7d505a3c2bf98f0d +EBUILD gitlabhq-7.0.0.ebuild 10531 SHA256 d03bfa06b275071784f6e3b098687f207784913519894a83267aa15ecd7e1cd5 SHA512 fa697d2a8bb73cd0d69f15500ec340dda5b9bcd23927bb34dbb85913888419e373983e51183218fa9cc7181e075c057c0a79dd28c8ed1aae0e407fd28f2676c4 WHIRLPOOL 337a44ef1c3068eeb48a0ff9aabdb91eb70141d500a29c3884b0372b89752126cdc05fbaaacd353ad52682a3c0133c26243c00e4d02d42acdbf8eb1aad1e2192 diff --git a/www-apps/gitlabhq/files/gitlabhq-7.0.0-email-custom-reply_to.patch b/www-apps/gitlabhq/files/gitlabhq-7.0.0-email-custom-reply_to.patch new file mode 100644 index 0000000..e2d6780 --- /dev/null +++ b/www-apps/gitlabhq/files/gitlabhq-7.0.0-email-custom-reply_to.patch @@ -0,0 +1,39 @@ +diff --git a/app/mailers/notify.rb b/app/mailers/notify.rb +index 84a0da0..9cb359e 100644 +--- a/app/mailers/notify.rb ++++ b/app/mailers/notify.rb +@@ -16,7 +16,7 @@ class Notify < ActionMailer::Base + default_url_options[:script_name] = Gitlab.config.gitlab.relative_url_root + + default from: Proc.new { default_sender_address.format } +- default reply_to: "noreply@#{Gitlab.config.gitlab.host}" ++ default reply_to: Gitlab.config.gitlab.email_reply_to + + # Just send email with 2 seconds delay + def self.delay +diff --git a/config/gitlab.yml.example b/config/gitlab.yml.example +index b2b8f56..173924c 100644 +--- a/config/gitlab.yml.example ++++ b/config/gitlab.yml.example +@@ -35,6 +35,9 @@ production: &base + # Email address used in the "From" field in mails sent by GitLab + email_from: example@example.com + ++ # Email address used in the "Reply-To" field in mails send by GitLab (default: no-reply@) ++ email_reply_to: no-reply@example.com ++ + # Email server smtp settings are in [a separate file](initializers/smtp_settings.rb.sample). + + ## User settings +diff --git a/config/initializers/1_settings.rb b/config/initializers/1_settings.rb +index f55e69c..997ff2e 100644 +--- a/config/initializers/1_settings.rb ++++ b/config/initializers/1_settings.rb +@@ -79,6 +79,7 @@ Settings.gitlab['port'] ||= Settings.gitlab.https ? 443 : 80 + Settings.gitlab['relative_url_root'] ||= ENV['RAILS_RELATIVE_URL_ROOT'] || '' + Settings.gitlab['protocol'] ||= Settings.gitlab.https ? "https" : "http" + Settings.gitlab['email_from'] ||= "gitlab@#{Settings.gitlab.host}" ++Settings.gitlab['email_reply_to'] ||= "no-reply@#{Settings.gitlab.host}" + Settings.gitlab['url'] ||= Settings.send(:build_gitlab_url) + Settings.gitlab['user'] ||= 'git' + Settings.gitlab['user_home'] ||= begin diff --git a/www-apps/gitlabhq/files/gitlabhq-7.0.0-fix-gemfile.patch b/www-apps/gitlabhq/files/gitlabhq-7.0.0-fix-gemfile.patch new file mode 100644 index 0000000..3d61845 --- /dev/null +++ b/www-apps/gitlabhq/files/gitlabhq-7.0.0-fix-gemfile.patch @@ -0,0 +1,88 @@ +diff --git a/Gemfile b/Gemfile +index c642134..de4217b 100644 +--- a/Gemfile ++++ b/Gemfile +@@ -150,6 +150,10 @@ gem "underscore-rails", "~> 1.4.4" + # Sanitize user input + gem "sanitize", '~> 2.0' + ++# The newer revision of charlock_holmes that is finally fixed to ++# be compatible with Gentoo ++gem "charlock_holmes", git: "https://github.com/brianmario/charlock_holmes.git", ref: "dde194609b3513b0d2369ce8f916ae52566154b4" ++ + # Protect against bruteforcing + gem "rack-attack" + +@@ -162,7 +166,6 @@ gem 'semantic-ui-sass', '~> 0.16.1.0' + gem "sass-rails", '~> 4.0.2' + gem "coffee-rails" + gem "uglifier" +-gem "therubyracer" + gem 'turbolinks' + gem 'jquery-turbolinks' + +diff --git a/Gemfile.lock b/Gemfile.lock +index 6c27b6e..68c8f41 100644 +--- a/Gemfile.lock ++++ b/Gemfile.lock +@@ -1,3 +1,10 @@ ++GIT ++ remote: https://github.com/brianmario/charlock_holmes.git ++ revision: dde194609b3513b0d2369ce8f916ae52566154b4 ++ ref: dde194609b3513b0d2369ce8f916ae52566154b4 ++ specs: ++ charlock_holmes (0.6.9.4) ++ + GEM + remote: https://rubygems.org/ + specs: +@@ -61,7 +68,6 @@ GEM + json (>= 1.7) + celluloid (0.15.2) + timers (~> 1.1.0) +- charlock_holmes (0.6.9.4) + cliver (0.3.2) + code_analyzer (0.4.3) + sexp_processor +@@ -270,7 +276,6 @@ GEM + addressable (~> 2.3) + letter_opener (1.1.2) + launchy (~> 2.2) +- libv8 (3.16.14.3) + listen (2.3.1) + celluloid (>= 0.15.2) + rb-fsevent (>= 0.9.3) +@@ -411,7 +416,6 @@ GEM + redis-store (~> 1.1.0) + redis-store (1.1.4) + redis (>= 2.2) +- ref (1.0.5) + require_all (1.3.2) + rest-client (1.6.7) + mime-types (>= 1.16) +@@ -508,9 +512,6 @@ GEM + term-ansicolor (1.2.2) + tins (~> 0.8) + test_after_commit (0.2.2) +- therubyracer (0.12.0) +- libv8 (~> 3.16.14.0) +- ref + thin (1.6.1) + daemons (>= 1.0.9) + eventmachine (>= 1.0.0) +@@ -582,6 +583,7 @@ DEPENDENCIES + bootstrap-sass (~> 3.0) + capybara (~> 2.2.1) + carrierwave ++ charlock_holmes! + coffee-rails + colored + coveralls +@@ -674,7 +676,6 @@ DEPENDENCIES + stamp + state_machine + test_after_commit +- therubyracer + thin + tinder (~> 1.9.2) + turbolinks diff --git a/www-apps/gitlabhq/files/gitlabhq-7.0.0-ldap-custom-mapping.patch b/www-apps/gitlabhq/files/gitlabhq-7.0.0-ldap-custom-mapping.patch new file mode 100644 index 0000000..ad5d539 --- /dev/null +++ b/www-apps/gitlabhq/files/gitlabhq-7.0.0-ldap-custom-mapping.patch @@ -0,0 +1,84 @@ +diff --git a/Gemfile b/Gemfile +index de4217b..8723eda 100644 +--- a/Gemfile ++++ b/Gemfile +@@ -39,7 +39,8 @@ gem "gitlab_git", '~> 6.0' + gem 'gitlab-grack', '~> 2.0.0.pre', require: 'grack' + + # LDAP Auth +-gem 'gitlab_omniauth-ldap', '1.0.4', require: "omniauth-ldap" ++# Patched for attributes mapping customization ++gem 'gitlab_omniauth-ldap', '1.0.4', require: 'omniauth-ldap', git: 'https://github.com/jirutka/omniauth-ldap.git', ref: 'b55852bfc9b46ecf790a2c5526386702350eab89' + + # Git Wiki + gem 'gollum-lib', '~> 3.0.0' +diff --git a/Gemfile.lock b/Gemfile.lock +index 68c8f41..225089f 100644 +--- a/Gemfile.lock ++++ b/Gemfile.lock +@@ -5,6 +5,17 @@ GIT + specs: + charlock_holmes (0.6.9.4) + ++GIT ++ remote: https://github.com/jirutka/omniauth-ldap.git ++ revision: b55852bfc9b46ecf790a2c5526386702350eab89 ++ ref: b55852bfc9b46ecf790a2c5526386702350eab89 ++ specs: ++ gitlab_omniauth-ldap (1.0.4) ++ net-ldap (~> 0.3.1) ++ omniauth (~> 1.0) ++ pyu-ruby-sasl (~> 0.0.3.1) ++ rubyntlm (~> 0.1.1) ++ + GEM + remote: https://rubygems.org/ + specs: +@@ -188,11 +199,6 @@ GEM + gitlab-linguist (~> 3.0) + rugged (~> 0.19.0) + gitlab_meta (7.0) +- gitlab_omniauth-ldap (1.0.4) +- net-ldap (~> 0.3.1) +- omniauth (~> 1.0) +- pyu-ruby-sasl (~> 0.0.3.1) +- rubyntlm (~> 0.1.1) + gollum-lib (3.0.0) + github-markup (~> 1.1.0) + gitlab-grit (~> 2.6.5) +@@ -609,7 +615,7 @@ DEPENDENCIES + gitlab_emoji (~> 0.0.1.1) + gitlab_git (~> 6.0) + gitlab_meta (= 7.0) +- gitlab_omniauth-ldap (= 1.0.4) ++ gitlab_omniauth-ldap (= 1.0.4)! + gollum-lib (~> 3.0.0) + gon (~> 5.0.0) + grape (~> 0.6.1) +diff --git a/config/gitlab.yml.example b/config/gitlab.yml.example +index 806984e..b2b8f56 100644 +--- a/config/gitlab.yml.example ++++ b/config/gitlab.yml.example +@@ -132,6 +132,10 @@ production: &base + method: 'ssl' # "tls" or "ssl" or "plain" + bind_dn: '_the_full_dn_of_the_user_you_will_bind_with' + password: '_the_password_of_the_bind_user' ++ mapping: ++ username: 'uid' ++ name: 'cn' ++ email: 'mail' + # If allow_username_or_email_login is enabled, GitLab will ignore everything + # after the first '@' in the LDAP username submitted by the user on login. + # +diff --git a/config/initializers/devise.rb b/config/initializers/devise.rb +index 50669ec..881081b 100644 +--- a/config/initializers/devise.rb ++++ b/config/initializers/devise.rb +@@ -223,6 +223,7 @@ Devise.setup do |config| + method: Gitlab.config.ldap['method'], + bind_dn: Gitlab.config.ldap['bind_dn'], + password: Gitlab.config.ldap['password'], ++ mapping: Gitlab.config.ldap['mapping'], + name_proc: email_stripping_proc + end + diff --git a/www-apps/gitlabhq/gitlabhq-7.0.0.ebuild b/www-apps/gitlabhq/gitlabhq-7.0.0.ebuild index 9a76a69..896283b 100644 --- a/www-apps/gitlabhq/gitlabhq-7.0.0.ebuild +++ b/www-apps/gitlabhq/gitlabhq-7.0.0.ebuild @@ -67,12 +67,11 @@ ruby_add_bdepend " # Fix default settings to work with ssmtp that doesn't know '-t' argument. # RUBY_PATCHES=( - "${PN}-6.8.2-fix-gemfile.patch" + "${P}-fix-gemfile.patch" "${PN}-6.7.5-fix-project-name-regex.patch" "${PN}-6.0.2-fix-sendmail-config.patch" - "${PN}-6.8.2-ldap-custom-mapping.patch" - "${PN}-6.7.5-email-custom-reply_to.patch" - "${PN}-6.8.2-fix-gemfile-lock.patch" + "${P}-ldap-custom-mapping.patch" + "${P}-email-custom-reply_to.patch" ) MY_NAME="gitlab" @@ -134,7 +133,6 @@ all_ruby_prepare() { # remove useless files rm -r lib/support/{deploy,init.d} - rm -r script/{background_jobs,web} use unicorn || rm config/unicorn.rb }