diff options
author | Carlo Landmeter <clandmeter@gmail.com> | 2016-03-18 16:31:36 +0100 |
---|---|---|
committer | Carlo Landmeter <clandmeter@gmail.com> | 2016-03-18 16:31:36 +0100 |
commit | ea6a7e16ad7be1532875bd821e60857f33905d66 (patch) | |
tree | 4e4d7b4678911407c1f77cac8742cd95a671f578 /community/redmine | |
parent | 840ac4ae3b54497f6839ac673b060a055fc5acc8 (diff) | |
download | aports-ea6a7e16ad7be1532875bd821e60857f33905d66.tar.bz2 aports-ea6a7e16ad7be1532875bd821e60857f33905d66.tar.xz |
redmine: move with deps to community
Diffstat (limited to 'community/redmine')
-rw-r--r-- | community/redmine/APKBUILD | 111 | ||||
-rw-r--r-- | community/redmine/database.yml.patch | 70 | ||||
-rw-r--r-- | community/redmine/gemfile.patch | 37 | ||||
-rw-r--r-- | community/redmine/redmine.post-install | 29 | ||||
-rw-r--r-- | community/redmine/redmine.pre-install | 7 |
5 files changed, 254 insertions, 0 deletions
diff --git a/community/redmine/APKBUILD b/community/redmine/APKBUILD new file mode 100644 index 0000000000..541a6c753d --- /dev/null +++ b/community/redmine/APKBUILD @@ -0,0 +1,111 @@ +# Contributor: Markus M. May <triplem@javafreedom.org> +# Contributor: Carlo Landmeter <clandmeter@gmail.com> +# Maintainer: Natanael Copa <ncopa@alpinelinux.org> +_railsver=4.2 +pkgname=redmine +pkgver=3.2.1 +pkgrel=0 +pkgdesc="Project management web application written in Ruby" +url="http://redmine.org" +arch="noarch" +license="GPL2" +depends="ruby + ruby-actionpack-action_caching${_railsver} + ruby-actionpack-xml_parser${_railsver} + ruby-bigdecimal + ruby-coderay + ruby-fastercsv + ruby-i18n + ruby-jquery-rails${_railsver} + ruby-json + ruby-mocha + ruby-net-ldap + ruby-openid<2.4 + ruby-rack + ruby-rack-openid + ruby-rails${_railsver} + ruby-rbpdf + ruby-rdoc + ruby-redcarpet + ruby-request_store + ruby-rmagick + ruby-protected_attributes${_railsver} + ruby-roadie-rails + " +depends_dev=ruby-io-console +makedepends="$depends_dev" +install="$pkgname.pre-install $pkgname.post-install" +subpackages="" +pkgusers="$pkgname" +pkggroups="$pkgname www-data" +source="http://www.redmine.org/releases/redmine-$pkgver.tar.gz + gemfile.patch + database.yml.patch + " +_webapps="usr/share/webapps" + +_builddir="$srcdir"/redmine-$pkgver + +prepare() { + local i + cd "$_builddir" + for i in $source; do + case $i in + *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;; + esac + done +} + +build() { + cd "$_builddir" + # verify that all deps are installed + if ! bundler check; then + bundler list + return 1 + fi +} + +package() { + cd "$_builddir" + # create dirs + mkdir -p "$pkgdir/$_webapps/$pkgname" "$pkgdir"/etc/redmine \ + || return 1 + install -o redmine -g www-data -m775 -d \ + "$pkgdir"/var/lib/redmine "$pkgdir"/var/log/redmine \ + || return 1 + + # move config files + for i in database.yml.example configuration.yml.example \ + additional_environment.rb.example routes.rb; do + mv config/${i} "$pkgdir"/etc/redmine/${i%.example} || return 1 + ln -s /etc/redmine/${i%.example} config/${i%.example} \ + || return 1 + done + + # writeable data dirs + for i in db files tmp public/plugin_assets; do + chown redmine:www-data $i || return 1 + chmod 775 $i || return 1 + mv $i "$pkgdir"/var/lib/redmine/ || return 1 + ln -s /var/lib/redmine/${i#*/} $i || return 1 + done + chown redmine Gemfile.lock || return 1 + + # the secret token is generated by post-install + ln -s /var/lib/redmine/secret_token.rb config/initializers/ + + # log dir + rm -r log && ln -s /var/log/redmine log || return 1 + + mv * "$pkgdir/$_webapps/$pkgname" || return 1 +} + +md5sums="425aa0c56b66bf48c878798a9f7c6546 redmine-3.2.1.tar.gz +a80146b41b912f248140e616154073f6 gemfile.patch +d834bef9b5f01484f1e0ee82676f4109 database.yml.patch" +sha256sums="5e69ad50eef27b581e58ea0d72f2dcb19f38db3626e3bd6ed27b74d5a4da5bd6 redmine-3.2.1.tar.gz +d9d94fcb696aed05b308114c0b053f878918e3d2dbd12e5ee0b46c041bd18bcd gemfile.patch +28b1ec099ae87c43d00d7e997edabaece01d6fc2e67b46c50735e9a1bb72f130 database.yml.patch" +sha512sums="20bc63f82aa58a67c10733338e7aebae3348689531f1f0a6dbedb00301f128ef6a29bd6a33d3075b614e01b23f5311a9739b251fb911298e54d4df06df628bf3 redmine-3.2.1.tar.gz +9f3be9039f9c576b56d77e3e3f477fe16fdd5d0f8b8b1bb3722cad1aff669f2ee65c308d27ec8c25300b4a3991b65fcf9d4d127abd0542477f1dd8f5af82d7ee gemfile.patch +1b5880979f050a71d726c844369cc5340a8d4aa0b59b2301e1d32dea28f70ca2a85e619c8b845c37de08772154eef13fa63716c1beaaa50d97b80fd65c297bf9 database.yml.patch" diff --git a/community/redmine/database.yml.patch b/community/redmine/database.yml.patch new file mode 100644 index 0000000000..400c4be7b6 --- /dev/null +++ b/community/redmine/database.yml.patch @@ -0,0 +1,70 @@ +--- ./config/database.yml.example.orig ++++ ./config/database.yml.example +@@ -2,32 +2,32 @@ + # Examples for PostgreSQL, SQLite3 and SQL Server can be found at the end. + # Line indentation must be 2 spaces (no tabs). + +-production: +- adapter: mysql2 +- database: redmine +- host: localhost +- username: root +- password: "" +- encoding: utf8 ++#production: ++# adapter: mysql2 ++# database: redmine ++# host: localhost ++# username: root ++# password: "" ++# encoding: utf8 ++# ++#development: ++# adapter: mysql2 ++# database: redmine_development ++# host: localhost ++# username: root ++# password: "" ++# encoding: utf8 + +-development: +- adapter: mysql2 +- database: redmine_development +- host: localhost +- username: root +- password: "" +- encoding: utf8 +- + # Warning: The database defined as "test" will be erased and + # re-generated from your development database when you run "rake". + # Do not set this db to the same as development or production. +-test: +- adapter: mysql2 +- database: redmine_test +- host: localhost +- username: root +- password: "" +- encoding: utf8 ++#test: ++# adapter: mysql2 ++# database: redmine_test ++# host: localhost ++# username: root ++# password: "" ++# encoding: utf8 + + # PostgreSQL configuration example + #production: +@@ -38,9 +38,9 @@ + # password: "postgres" + + # SQLite3 configuration example +-#production: +-# adapter: sqlite3 +-# database: db/redmine.sqlite3 ++production: ++ adapter: sqlite3 ++ database: /var/lib/redmine/db.sqlite3 + + # SQL Server configuration example + #production: diff --git a/community/redmine/gemfile.patch b/community/redmine/gemfile.patch new file mode 100644 index 0000000000..ed86389c1c --- /dev/null +++ b/community/redmine/gemfile.patch @@ -0,0 +1,37 @@ + +--- ./Gemfile.orig ++++ ./Gemfile +@@ -8,7 +8,7 @@ + gem "jquery-rails", "~> 3.1.3" + gem "coderay", "~> 1.1.0" + gem "builder", ">= 3.0.4" +-gem "request_store", "1.0.5" ++gem "request_store", "~>1.0.5" + gem "mime-types" + gem "protected_attributes" + gem "actionpack-action_caching" +@@ -86,17 +86,17 @@ + + group :development do + gem "rdoc", ">= 2.4.2" +- gem "yard" ++# gem "yard" + end + + group :test do +- gem "minitest" +- gem "rails-dom-testing" +- gem "mocha" +- gem "simplecov", "~> 0.9.1", :require => false ++# gem "minitest" ++# gem "rails-dom-testing" ++# gem "mocha" ++# gem "simplecov", "~> 0.9.1", :require => false + # For running UI tests +- gem "capybara" +- gem "selenium-webdriver" ++# gem "capybara" ++# gem "selenium-webdriver" + end + + local_gemfile = File.join(File.dirname(__FILE__), "Gemfile.local") diff --git a/community/redmine/redmine.post-install b/community/redmine/redmine.post-install new file mode 100644 index 0000000000..f68632c78e --- /dev/null +++ b/community/redmine/redmine.post-install @@ -0,0 +1,29 @@ +#!/bin/sh + +tokenfile=/var/lib/redmine/secret_token.rb +if [ -e $tokenfile ]; then + exit 0 +fi + +if [ -e /dev/urandom ] && [ -x /usr/bin/hexdump ]; then + token=$(/usr/bin/hexdump -n 32 -v -e '/1 "%02x"' /dev/urandom) +else + token=$(for i in $(seq 0 31); do echo $RANDOM; done | sha1sum | awk '{print $1}') +fi + +umask 027 +cat >$tokenfile<<EOF +# This file was generated by redmine apk post-install script, and should +# not be made visible to public. +# If you have a load-balancing Redmine cluster, you will need to use the +# same version of this file on each machine. And be sure to restart your +# server when you modify this file. +# +# Your secret key for verifying cookie session data integrity. If you +# change this key, all old sessions will become invalid! Make sure the +# secret is at least 30 characters and all random, no regular words or +# you'll be exposed to dictionary attacks. +RedmineApp::Application.config.secret_key_base = '$token' +EOF + +chgrp www-data $tokenfile diff --git a/community/redmine/redmine.pre-install b/community/redmine/redmine.pre-install new file mode 100644 index 0000000000..780b89f54b --- /dev/null +++ b/community/redmine/redmine.pre-install @@ -0,0 +1,7 @@ +#!/bin/sh + +addgroup -g 82 -S www-data 2>/dev/null +adduser -S -H -h /usr/share/webapps/redmine -s /bin/sh -D redmine 2>/dev/null +addgroup redmine www-data 2>/dev/null + +exit 0 |