Как настроить сервер Gitorious в Ubuntu?

, если вы не хотите использовать UIDocumentInteractionController

import Photos
...

func postImageToInstagram(image: UIImage) {
        UIImageWriteToSavedPhotosAlbum(image, self, #selector(SocialShare.image(_:didFinishSavingWithError:contextInfo:)), nil)
}
func image(image: UIImage, didFinishSavingWithError error: NSError?, contextInfo:UnsafePointer<Void>) {
        if error != nil {
            print(error)
        }

        let fetchOptions = PHFetchOptions()
        fetchOptions.sortDescriptors = [NSSortDescriptor(key: "creationDate", ascending: false)]
        let fetchResult = PHAsset.fetchAssetsWithMediaType(.Image, options: fetchOptions)
        if let lastAsset = fetchResult.firstObject as? PHAsset {
            let localIdentifier = lastAsset.localIdentifier
            let u = "instagram://library?LocalIdentifier=" + localIdentifier
            let url = NSURL(string: u)!
            if UIApplication.sharedApplication().canOpenURL(url) {
                UIApplication.sharedApplication().openURL(NSURL(string: u)!)
            } else {
                let alertController = UIAlertController(title: "Error", message: "Instagram is not installed", preferredStyle: .Alert)
                alertController.addAction(UIAlertAction(title: "OK", style: .Default, handler: nil))
                self.presentViewController(alertController, animated: true, completion: nil)
            }

        }
}
4
задан Amith KK 5 July 2012 в 13:00
поделиться

2 ответа

Обновление: С Gitorious 3.2 (начало 2015) gitorious поддерживает человечность непосредственно. См. https://gitorious.org/gitorious/ce-installer / для инструкций по установке.

Исходные инструкции:

Для установки gitorious последний от мерзавца выполните эти шаги

Первый, отпускает корень при помощи [1 161]

sudo su
[sudo] password for <username>:

пакеты Установки

При установке всех этих пакетов, Вас попросят пароля root MySQL, который необходимо помнить, потому что Вам будет нужен он позже.

  aptitude install \
    build-essential zlib1g-dev tcl-dev libexpat-dev libxslt1-dev \
    libcurl4-openssl-dev postfix apache2 mysql-server mysql-client \
    apg geoip-bin libgeoip1 libgeoip-dev sqlite3 libsqlite3-dev \
    imagemagick libpcre3 libpcre3-dev zlib1g zlib1g-dev libyaml-dev \
    libmysqlclient15-dev apache2-dev libonig-dev ruby-dev rubygems \
    libopenssl-ruby libdbd-mysql-ruby libmysql-ruby \
    libmagick++-dev zip unzip memcached git-core git-svn git-doc \
    git-cvs irb

Установка Драгоценных камней Ruby

Gem.source_index удерживается от использования. Используя систему 1.8.25 избегает source_index ошибки.

REALLY_GEM_UPDATE_SYSTEM=1 gem update --system 1.8.25

Теперь мы можем установить все необходимые драгоценные камни:

  gem install --no-ri --no-rdoc -v 0.8.7 rake && \
    gem install --no-ri --no-rdoc -v 1.1.0 daemons && \
    gem install -b --no-ri --no-rdoc \
        rmagick stompserver passenger bundler

Установка Поискового сервера Сфинкса

wget http://sphinxsearch.com/files/sphinx-0.9.9.tar.gz && \
    tar -xzf sphinx-0.9.9.tar.gz && \
    cd sphinx-0.9.9 && \
    ./configure --prefix=/usr && \
    make all install

Получение Gitorious

  git clone git://gitorious.org/gitorious/mainline.git /var/www/gitorious && \
    cd /var/www/gitorious && \
    git submodule init && \
    git submodule update

, Легкого как круг. Теперь мы просто должны поместить двоичный файл Gitorious на наш путь:

 ln -s /var/www/gitorious/script/gitorious /usr/bin

услуги по Конфигурированию

Gitorious нужен набор фоновых сервисов, таким образом, мы должны скопировать предоставленные сценарии запуска:

cd /var/www/gitorious/doc/templates/ubuntu/ && \
    cp git-daemon git-poller git-ultrasphinx stomp /etc/init.d/ && \
    cd /etc/init.d/ && \
    chmod 755 git-daemon git-poller git-ultrasphinx stomp

и включают им:

 update-rc.d git-daemon defaults && \
    update-rc.d git-poller defaults && \
    update-rc.d git-ultrasphinx defaults && \
    update-rc.d stomp defaults

Мы должны создать дополнительную символьную ссылку, потому что все сценарии запуска имеют набор RUBY_HOME к/opt/ruby-enterprise (альтернативно, мы могли просто исправить файлы, но этот способ, которым это легче и можно обновить сценарии в случае необходимости):

 ln -s /usr/ /opt/ruby-enterprise

ультрасфинкс мерзавца Фиксации

По состоянию на март 2013 сценарий ультрасфинкса мерзавца повреждается и не запустится. Отредактируйте /etc/init.d/git-ultrasphinx и проверьте, что start, stop и restart команды следующим образом (замена ultrasphinx:daemon с [1 137] при необходимости):

 START_CMD="cd $GITORIOUS_HOME && rake ts:start RAILS_ENV=production"
 STOP_CMD="cd $GITORIOUS_HOME && rake ts:stop RAILS_ENV=production"
 RESTART_CMD="cd $GITORIOUS_HOME && rake ts:restart RAILS_ENV=production"

Пассажир Apache

Конфигурирования

, В первую очередь, мы должны скомпилировать пассажирский модуль Apache2:

$ (пассажир содержания драгоценного камня | grep passenger-install-apache2-module)

пассажирский сценарий конфигурации скажет Вам точно, что you⠀™ ll должен добавить к Вашей апачской конфигурации. Часть, которую необходимо скопировать, похожа на это:

отредактируйте свой конфигурационный файл Apache и добавьте эти строки:

   LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-3.0.9/ext/apache2/mod_passenger.so
    PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-3.0.9
    PassengerRuby /usr/bin/ruby1.8

после перезапуска Apache Вы готовы развернуть любое количество приложений Ruby on Rails на Apache без дальнейшей определенной для Ruby on Rails конфигурации! Эти три строки должны быть вставлены в [1 174]

/etc/apache2/mods-available/passenger.load

Включающие необходимые модули

   a2enmod passenger && \
        a2enmod rewrite && \
        a2enmod ssl

, Создание сайтов Apache2

Вводит:

nano /etc/apache2/sites-available/gitorious

И копия вставляют следующий текст

<VirtualHost *:80>
    ServerName your.server.com
    DocumentRoot /var/www/gitorious/public
</VirtualHost>

Тип в [1 178]

 nano /etc/apache2/sites-available/gitorious-ssl 

И копируют, вставляют следующий текст

<IfModule mod_ssl.c>
    <VirtualHost _default_:443>
        DocumentRoot /var/www/gitorious/public
        SSLEngine on
        SSLCertificateFile    /etc/ssl/certs/ssl-cert-snakeoil.pem
        SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
        BrowserMatch ".*MSIE.*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
    </VirtualHost>
</IfModule>

Теперь, мы должны отключить сайт по умолчанию и включить наши недавно созданные сайты Gitorious:

  a2dissite default && \
    a2dissite default-ssl && \
    a2ensite gitorious && \
    a2ensite gitorious-ssl

Создание пользователя MySQL для gitorious

  mysql -u root -p

Вводит пароль, который Вы сделали при установке MySQL после того, как следующая подсказка

Enter password:

Вводит это линию за линией, исключая mysql> и изменение <insert password> с паролем MySQL, который Вы сделали при установке Gitorious

Конфигурирования MySQL

 mysql> GRANT ALL PRIVILEGES ON *.* TO 'gitorious'@'localhost' IDENTIFIED BY '<insert password>' WITH GRANT OPTION;

mysql> FLUSH PRIVILEGES;

, В первую очередь, мы должны удостовериться, что у нас есть все драгоценные камни в правильной версии для Gitorious, таким образом, мы выполняем следующее:

cd /var/www/gitorious/ && \
    bundle install && \
    bundle pack

Теперь мы можем создать пользователя, при котором Gitorious будет выполнять и обслуживать репозитории Мерзавца:

  adduser --system --home /var/www/gitorious/ --no-create-home --group --shell /bin/bash git && \
    chown -R git:git /var/www/gitorious

Затем мы должны создать некоторый материал, который должен выполнить Gitorious:

  su - git && \
    mkdir .ssh && \
    touch .ssh/authorized_keys && \
    chmod 700 .ssh && \
    chmod 600 .ssh/authorized_keys && \
    mkdir tmp/pids && \
    mkdir repositories && \
    mkdir tarballs

Создание конфигурации Gitorious

Позволяет, копируют демонстрационные конфигурационные файлы в корректный путь:

 cp config/database.sample.yml config/database.yml && \
    cp config/gitorious.sample.yml config/gitorious.yml && \
    cp config/broker.yml.example config/broker.yml

Теперь редактируют config/database.yml и удостоверяются, что Вы устанавливаете корректное имя пользователя и пароль в производственном разделе. После этого мы должны установить несколько вещей в config/gitorious.yml:

Удостоверяются, что Вы настраиваете правильный раздел (не, протестируйте: но производство:)

repository_base_path should be /var/www/gitorious/repositories
cookie_secret needs to be set to a random value >= 30 characters
gitorious_client_port should be 80
gitorious_host needs to be the exact hostname that clients will use (cookies get messed up otherwise)
archive_cache_dir should be /var/www/gitorious/tarballs
archive_work_dir should be something like /tmp/tarballs-work
hide_http_clone_urls should be true (they require extra unknown setup to work)
is_gitorious_dot_org should be false
Creating the Gitorious database

из-за несовместимости RubyGems с направляющими < 2.3.11 необходимо добавить следующую строку наверху config/boot.rb:

require 'thread'

Теперь мы позволяем граблям сделать всю работу для нас:

export RAILS_ENV=production && \
    bundle exec rake db:create && \
    bundle exec rake db:migrate && \
    bundle exec rake rake ts:conf && \
    bundle exec rake rake ts:rebuild

Создают сфинкса Cronjob

crontab -e 10 * * * * /var/www/gitorious/bin/rake ts:rebuild >/dev/null RAILS_ENV=production

, Создают администраторского пользователя

env RAILS_ENV=production ruby1.8 script/create_admin

Перезагрузка

You⠀™ ре, наконец сделанное. Перезагрузите свою машину Ubuntu, и Ваша установка Gitorious должна быть в порядке.

Проверяющие возможные проблемы

Обзор http://your.server.com/admin/diagnostics для проверки на возможные проблемы.

<час>

Источник : http://coding-journal.com/installing-gitorious-on-ubuntu-11-04/

9
ответ дан zeehio 22 October 2019 в 14:47
поделиться

Можно также попробовать мой автоустановщик:

http://blog.celogeek.com/201211/272/gitorious-installer-for-ubuntu/

https://gitorious.celogeek.com/gitorious-installer

Говорит мне, если он работает на Вас.

2
ответ дан celogeek 22 October 2019 в 14:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: