diff --git a/pkg/fedora/diaspora-bundle.spec b/pkg/fedora/diaspora-bundle.spec
index a4ab0e6effaecb93273f07940e4c8acef2fbd875..dee189a2604de958ef3bad1fe7953f2ca9dd8e49 100644
--- a/pkg/fedora/diaspora-bundle.spec
+++ b/pkg/fedora/diaspora-bundle.spec
@@ -1,6 +1,6 @@
 %define         git_release     HEAD
 
-# Turn off java repack, this is in in /usr/lib[64] anyway
+# Turn off java repack, this is in /usr/lib[64] anyway
 %define         __jar_repack    %{nil}
 
 # Turn off the brp-python-bytecompile script, *pyc/pyo causes problems
@@ -11,20 +11,20 @@ Summary:        Rubygem bundle for diaspora
 Name:           diaspora-bundle
 Version:        0.0
 Release:        1.%{git_release}%{?dist}
-License:        AGPLv3
+License:        Ruby
 Group:          Applications/Communications
 URL:            http://www.joindiaspora.com/
 Vendor:         joindiaspora.com
 Source:         %{name}-%{version}-%{git_release}.tar.gz
 Prefix:         %{_prefix}
-BuildRoot:      %{_rmpdir}/not-used-in-fedora/
+BuildRoot:      %{_tmpdir}/not-used-since-F13/
 
 Requires(pre):  shadow-utils
 Requires:       ruby(abi) = 1.8
 
 %description
 The ruby apps bundled with diaspora, as provided by
-bundle install --deployment and patched for Fedora use.
+bundle install --package and patched for Fedora use.
 
 %package devel
 Summary:   Development files (i. e., sources) for diaspora-bundle
@@ -37,53 +37,15 @@ Source file usede to compile native libraries in diaspora-bundle.
 %prep
 %setup -q -n %{name}-%{version}-%{git_release}
 
-find . -name .git* -print | xargs rm -rf
-
-pushd bundle/ruby/1.8/
-    find . -name \*.css -exec  chmod 644 {} \;
-    find . -name \*.js -exec  chmod 644 {} \;
-    find . -name \*.treetop -exec  chmod 644 {} \;
-    find . -name \*.rdoc -exec  chmod 644 {} \;
-    chmod 644 gems/term-ansicolor-1.0.5/CHANGES || :
-    chmod 755 gems/cucumber-rails-0.3.2/templates/install/script/cucumber || :
-    chmod 755 gems/ruby-debug-base-0.10.3/Rakefile || :
-    chmod 644 gems/cucumber-rails-0.3.2/History.txt || :
-    chmod 644 gems/cucumber-rails-0.3.2/templates/install/step_definitions/capybara_steps.rb.erb || :
-    chmod 644 gems/rack-1.2.1/test/cgi/lighttpd.conf || :
-    chmod 644 gems/term-ansicolor-1.0.5/VERSION || :
-    chmod 644 gems/mini_magick-2.1/Rakefile || :
-    chmod 755 gems/linecache-0.43/Rakefile || :
-    chmod 644 gems/ffi-0.6.3/ext/ffi_c/libffi/ltmain.sh || :
-    chmod 644 gems/term-ansicolor-1.0.5/README || :
-    chmod 755 gems/mini_magick-2.1/test/not_an_image.php || :
-    chmod 755 gems/rake-0.8.7/test/data/statusreturn/Rakefile || :
-    chmod 755 gems/ruby-debug-0.10.3/Rakefile || :
-    chmod 644 gems/gherkin-2.2.4/tasks/compile.rake || :
-    chmod 755 gems/rake-0.8.7/test/data/file_creation_task/Rakefile  || :
-    chmod 644 gems/term-ansicolor-1.0.5/Rakefile || :
-    chmod 755 gems/mime-types-1.16/Rakefile || :
-    for f in $(find . -name \*.rb); do
-      sed -i -e '/^#!/d' $f
-      chmod 0644 $f
-    done > /dev/null 2>&1
-    find .  -perm /u+x  -type f -print0 |
-        xargs --null sed -i 's|^#!/usr/local/bin/ruby|#!/usr/bin/ruby|'
-
-    chmod 755 gems/thin-1.2.7/example/async_chat.ru
-    chmod 755 gems/thin-1.2.7/example/async_tailer.ru
-    chmod 644 gems/i18n-0.4.1/MIT-LICENSE
-    chmod 755 gems/abstract-1.0.0/abstract.gemspec
-    chmod 644 gems/mini_magick-2.1/MIT-LICENSE || :
-    chmod 755 gems/thin-1.2.7/lib/thin/controllers/service.sh.erb
-    chmod 644 gems/treetop-1.4.8/spec/compiler/test_grammar.tt
-popd
-
 %build
+mkdir -p vendor/cache
+mv *.gem vendor/cache
+bundle install --local --deployment --without ri rdoc
 
-pushd bundle/ruby/1.8/
+pushd vendor/bundle/ruby/1.8/gems
     # In repo (2.2.4)
-    test -d gems/gherkin-*/ext && {
-    pushd gems/gherkin-*/ext
+    test -d gherkin-*/ext && {
+    pushd gherkin-*/ext
     # Recompile all shared libraries using -O2 flag
     for lexer_dir in */ ; do
         pushd $lexer_dir
@@ -102,32 +64,32 @@ pushd bundle/ruby/1.8/
     popd
     }
 
-    test -d gems/ffi-0.6.3/lib && {
-    pushd  gems/ffi-0.6.3/lib
+    test -d ffi-0.6.3/lib && {
+    pushd  ffi-0.6.3/lib
         rm ffi_c.so
         ln -s ../ext/ffi_c/ffi_c.so .
     popd
     }
 
     # In repo as 1.2.5, rawhide 1.2.7
-    pushd  gems/thin-1.2.7/lib
+    pushd  thin-1.2.7/lib
         rm thin_parser.so
         ln -s ../ext/thin_parser/thin_parser.so .
     popd
 
-    pushd gems/bson_ext-1.1/ext/bson_ext
+    pushd bson_ext-1.1/ext/bson_ext
         rm cbson.so
         ln -s ../cbson/cbson.so .
     popd
 
     # In repo (0.10.4)
-    pushd gems/ruby-debug-base-0.10.3/lib
+    pushd ruby-debug-base-0.10.3/lib
         rm ruby_debug.so
         ln -s ../ext/ruby_debug.so .
     popd
 
     #in repo
-    pushd gems/eventmachine-0.12.10/lib
+    pushd eventmachine-0.12.10/lib
        rm rubyeventmachine.so
        rm fastfilereaderext.so
        ln -s ../ext/rubyeventmachine.so .
@@ -135,19 +97,19 @@ pushd bundle/ruby/1.8/
     popd
 
     # In repo
-    pushd gems/bcrypt-ruby-2.1.2/lib
+    pushd bcrypt-ruby-2.1.2/lib
         rm bcrypt_ext.so
         ln -s ../ext/mri/bcrypt_ext.so .
     popd
 
     # in repo
-    pushd gems/nokogiri-1.4.3.1/lib/nokogiri
+    pushd nokogiri-1.4.3.1/lib/nokogiri
         rm nokogiri.so
         ln -sf ../../ext/nokogiri/nokogiri.so .
     popd
 
     # in repo (rawhide)
-    pushd gems/json-1.4.6/ext/json/ext/json/ext
+    pushd json-1.4.6/ext/json/ext/json/ext
         rm generator.so
         ln -s ../../generator/generator.so
         rm parser.so
@@ -155,19 +117,55 @@ pushd bundle/ruby/1.8/
     popd
 
     #in repo
-    pushd gems/linecache-0.43/lib/
+    pushd linecache-0.43/lib/
         rm trace_nums.so
         ln -s ../ext/trace_nums.so .
     popd
 
-    pushd bundler/gems/em-http-request-*/lib
+    pushd ../bundler/gems/em-http-request*/lib
         rm em_buffer.so
         ln -s ../ext/buffer/em_buffer.so .
         rm http11_client.so
         ln -s ../ext/http11_client/http11_client.so .
     popd
-popd
 
+    find . -name \*.css -print       | xargs chmod 644
+    find . -name \*.js  -print       | xargs chmod 644
+    find . -name \*.treetop -print   | xargs chmod 644
+    find . -name \*.rdoc -print      | xargs chmod 644
+
+    for f in $(find . -name \*.rb); do
+      sed -i -e '/^#!/d' $f
+      chmod 0644 $f
+    done &> /dev/null
+    find .  -perm /u+x  -type f -print0 |
+        xargs --null sed -i 's|^#!/usr/local/bin/ruby|#!/usr/bin/ruby|'
+
+    chmod 755 abstract-1.0.0/abstract.gemspec  || :
+    chmod 755 cucumber-rails-0.3.2/templates/install/script/cucumber || :
+    chmod 644 cucumber-rails-0.3.2/History.txt || :
+    chmod 644 cucumber-rails-0.3.2/templates/install/step_definitions/capybara_steps.rb.erb || :
+    chmod 644 ffi-0.6.3/ext/ffi_c/libffi/ltmain.sh || :
+    chmod 644 gherkin-2.2.4/tasks/compile.rake || :
+    chmod 644 i18n-0.4.1/MIT-LICENSE
+    chmod 755 linecache-0.43/Rakefile || :
+    chmod 755 mime-types-1.16/Rakefile || :
+    chmod 755 mini_magick-2.1/test/not_an_image.php || :
+    chmod 644 mini_magick-2.1/Rakefile || :
+    chmod 644 mini_magick-2.1/MIT-LICENSE || :
+    chmod 644 rack-1.2.1/test/cgi/lighttpd.conf || :
+    chmod 755 rake-0.8.7/test/data/file_creation_task/Rakefile  || :
+    chmod 755 rake-0.8.7/test/data/statusreturn/Rakefile || :
+    chmod 755 ruby-debug-0.10.3/Rakefile || :
+    chmod 755 ruby-debug-base-0.10.3/Rakefile || :
+    for file in CHANGES VERSION README Rakefile; do
+        chmod 644 term-ansicolor-1.0.5/$file || :
+    done
+    chmod 755 thin-1.2.7/lib/thin/controllers/service.sh.erb
+    chmod 755 thin-1.2.7/example/async_chat.ru  || :
+    chmod 755 thin-1.2.7/example/async_tailer.ru  || :
+    chmod 644 treetop-1.4.8/spec/compiler/test_grammar.tt  || :
+popd
 
 
 %pre
@@ -186,8 +184,8 @@ find . -name .git | xargs rm -rf
 find . -name .gitignore -delete
 find . -name \*.o -delete  || :
 
-test -d bundle/ruby/1.8/gems/selenium-webdriver-0.0.28 && {
-pushd bundle/ruby/1.8/gems/selenium-webdriver-0.0.28/lib/selenium/webdriver/
+test -d vendor/bundle/ruby/1.8//gems/selenium-webdriver-0.0.* && {
+pushd  vendor/bundle//ruby/1.8/gems/selenium-webdriver-0.0.*/lib/selenium/webdriver/
 %ifarch  %ix86 x86_64
 %ifarch %ix86
    rm -rf firefox/native/linux/amd64
@@ -201,8 +199,8 @@ pushd bundle/ruby/1.8/gems/selenium-webdriver-0.0.28/lib/selenium/webdriver/
 popd
 }
 
-mkdir -p $RPM_BUILD_ROOT/%{_libdir}/diaspora-bundle/
-cp -ar  bundle $RPM_BUILD_ROOT/%{_libdir}/diaspora-bundle/
+mkdir -p $RPM_BUILD_ROOT/%{_libdir}/diaspora-bundle
+cp -ar  vendor/bundle  $RPM_BUILD_ROOT/%{_libdir}/diaspora-bundle
 
 find  %{buildroot}/%{_libdir}/diaspora-bundle  \
     -type d  -fprintf dirs '%%%dir "%%p"\n'
diff --git a/pkg/fedora/diaspora-setup b/pkg/fedora/diaspora-setup
index 0214e419aa058ff03ae0944e95146f662cf0ad33..b3e2eac694ef49880d6eb57cf8c4d6825e1010e0 100755
--- a/pkg/fedora/diaspora-setup
+++ b/pkg/fedora/diaspora-setup
@@ -31,12 +31,11 @@ else
     cat <<- EOF
 
 	Database config failed. You might want to remove all db files with
-	'rm -rf /var/lib/mongodb/*' and/or resetting the config file by
+	'rm -rf /var/lib/mongodb/*' and/or reset the config file by
 	'cp config/app_config.yml.example config/app_config.yml' before
 	making a new try. Also, make sure the mongodb server is running
 	e. g., using '/sbin/service mongod status'.
 	EOF
-    exit 1
 fi
 
 chown -R diaspora /var/log/diaspora
diff --git a/pkg/fedora/make-dist.sh b/pkg/fedora/make-dist.sh
index ce450a3a7194217fa3e0d6f0119490ad9d4d3a8b..3da2ab6e398f4bf2df40c3f3978eaa41a59460fb 100755
--- a/pkg/fedora/make-dist.sh
+++ b/pkg/fedora/make-dist.sh
@@ -175,6 +175,43 @@ function make_src
     echo "Required bundle:     $(git_id dist/diaspora/Gemfile)"
 }
 
+function get_git_repos()
+{
+    grep -A 2 GIT $1 |
+        awk   ' /remote:/   { repo = $2 }
+                /revision:/ { printf "%s=%s\n",repo, $2}'
+}
+
+
+function package_git_gems()
+{
+    gemfile="$1"
+    dest="$2"
+
+    rm -rf git-tmp
+    mkdir git-tmp
+    cd git-tmp
+        for repo in $( get_git_repos $1); do
+            url=${repo%%=*}
+            rev=${repo##*=}
+
+            name=${url##*/}
+            name="${name%.git}"
+
+            rm -rf "$name"
+            git clone "$url" "$name"
+            cd $name
+                git reset --hard  $rev
+                sed -i '/s.date/s/Date.today/"2010-09-25"/' *.gemspec
+                gem build *.gemspec
+                cp *.gem $dest
+                echo "Built GIT gem $name (*.gem)"
+                echo "Where: $dest"
+            cd ..
+        done
+    cd ..
+}
+
 
 function make_bundle()
 # Create the bundle tarball
@@ -188,26 +225,28 @@ function make_bundle()
         echo "Creating bundle $bundle_name"
         cd dist
             rm -rf $bundle_name
-            mkdir -p $bundle_name/bundle
-            pushd diaspora > /dev/null
+            cd diaspora
                 if [ "$BUNDLE_FIX" = 'yes' ]; then
                     rm -f Gemfile.lock
                     rm -rf .bundle
                     bundle update
                 fi
-                bundle install --deployment                      \
-                               --path="../$bundle_name/bundle"   \
-                               --without=test rdoc
-
+                bundle install --deployment
+                bundle package
+                package_git_gems "$PWD/Gemfile.lock" "$PWD/vendor/cache"
                 cp -ar AUTHORS Gemfile Gemfile.lock GNU-AGPL-3.0 COPYRIGHT \
-                       "../$bundle_name"
-            popd > /dev/null
-            tar czf $bundle_name.tar.gz $bundle_name
-            rm -rf  $bundle_name
+                       vendor/cache
+                cd vendor
+                    mv cache $bundle_name
+                    tar czf ../../$bundle_name.tar.gz $bundle_name
+                    mv $bundle_name cache
+                cd ..
+            cd ..
         cd ..
     }
     echo
     echo "Bundle: dist/$bundle_name.tar.gz"
+    echo "Current dir:$PWD"
 }
 
 
diff --git a/pkg/ubuntu/diaspora-bundle-install b/pkg/ubuntu/diaspora-bundle-install
index caf95d4e8bb5a958c9343595abdb38ec8afc039e..88924b9309027b238203e6d88abba54b756e7f1e 100755
--- a/pkg/ubuntu/diaspora-bundle-install
+++ b/pkg/ubuntu/diaspora-bundle-install
@@ -16,11 +16,18 @@ test -r "$1" || {
 }
 
 rm -rf /usr/lib/diaspora-bundle
-tar xf $1 -C /usr/lib
+tar xzf $1 -C /usr/lib
 
 cd /usr/lib
 mv $(basename $1 .tar.gz) diaspora-bundle
+
 mkdir -p /usr/share/doc/diaspora-bundle || :
 cd /usr/lib/diaspora-bundle
+cp AUTHORS GNU-AGPL-3.0 COPYRIGHT Gemfile Gemfile.lock \
+     /usr/share/doc/diaspora-bundle
+
+mkdir -p vendor/cache
+mv *.gem vendor/cache
+
+bundle install --local --deployment --without ri rdoc
 
-cp  AUTHORS GNU-AGPL-3.0 COPYRIGHT /usr/share/doc/diaspora-bundle
diff --git a/pkg/ubuntu/diaspora-install b/pkg/ubuntu/diaspora-install
index 7f7fd8c23241defc4644ccabcd702918f15ac312..4679c9f2b0e1bebef2433c8afec11fa3da839ad1 100755
--- a/pkg/ubuntu/diaspora-install
+++ b/pkg/ubuntu/diaspora-install
@@ -25,7 +25,7 @@ cd /usr/share/diaspora
 find . -perm /u+x -type f -exec \
     sed -i 's|^#!/usr/local/bin/ruby|#!/usr/bin/ruby|' {} \; > /dev/null
 rm -rf master/vendor/bundle  master/public/uploads master/tmp master/log
-sed -i '/BUNDLE_PATH/s|:.*|: /usr/lib/diaspora-bundle/bundle|' \
+sed -i '/BUNDLE_PATH/s|:.*|: /usr/lib/diaspora-bundle/vendor/bundle|' \
          master/.bundle/config
 
 cp master/GNU-AGPL-3.0 master/COPYRIGHT master/README.md master/AUTHORS .
@@ -48,7 +48,7 @@ cp master/config/app_config.yml.example /etc/diaspora/app_config.yml
 ln -sf /etc/diaspora/app_config.yml master/config/app_config.yml
 ln -sf /var/lib/diaspora/uploads master/public/
 ln -sf /var/lib/diaspora/tmp master
-ln -sf /usr/lib/diaspora-bundle/bundle master/vendor
+ln -sf /usr/lib/diaspora-bundle/vendor/bundle master/vendor
 
 rm -rf /usr/share/doc/diaspora
 mkdir -p /usr/share/doc/diaspora
diff --git a/pkg/ubuntu/diaspora-setup b/pkg/ubuntu/diaspora-setup
index 32293a2d27170a09de8eeefed8f39a651ced4cc1..57966459704283f4fbde7b526beff6f11fc7448d 100755
--- a/pkg/ubuntu/diaspora-setup
+++ b/pkg/ubuntu/diaspora-setup
@@ -40,7 +40,6 @@ else
 	Also, make sure the mongodb server is running e. g., using
 	'service mongod status'.
 	EOF
-    exit 1
 fi
 
 chown -R diaspora /var/log/diaspora