diff --git a/Gemfile b/Gemfile index adc4431aa..cc92bec3d 100644 --- a/Gemfile +++ b/Gemfile @@ -38,10 +38,6 @@ gem 'magent', :git => 'http://github.com/dcu/magent.git' gem 'carrierwave', :git => 'git://github.com/rsofaer/carrierwave.git' , :branch => 'master' #Untested mongomapper branch gem 'mini_magick' -#sinatra -gem 'sinatra', '1.0' -gem 'async_sinatra' - group :test, :development do gem 'factory_girl_rails' end diff --git a/README.md b/README.md index d215f5e98..ded281e4a 100644 --- a/README.md +++ b/README.md @@ -26,273 +26,13 @@ network. **PLEASE, DO NOT RUN IN PRODUCTION. IT IS FUN TO GET RUNNING, BUT EXPECT THINGS TO BE BROKEN** +Some initial installation instructions are [here](http://github.com/diaspora/diaspora/wiki/Installing-and-Running-Diaspora). + We are continuing to build features and improve the code base. -When we think it is ready for general use, we will post more detailed +When we think it is ready for general use, we will post more final instructions. -## Notice -We currently run Diaspora with the [thin](http://code.macournoyer.com/thin/) as -our webserver, behind [nginx](http://wiki.nginx.org/Main). Diaspora uses an -asynchronous [EventMachine](http://rubyeventmachine.com/) queue inside the appserver -to send messages between seeds. If you use mod_rails, mongrel, or another -non-eventmachine based application server, federation may not work. - -If you don't like thin, you can always try -[Rainbows!](http://rainbows.rubyforge.org/) We will try to fully support more -webservers later, but that is what works for now. - -These instructions are for machines running [Ubuntu](http://www.ubuntu.com/), -[Fedora](http://www.fedoraproject.org) or Mac OS X. We are developing Diaspora -for the latest and greatest browsers, so please update your Firefox, Chrome or -Safari to the latest and greatest. - -## Preparing your system - -In order to run Diaspora, you will need to download the following dependencies -(specific instructions follow): - -- Build Tools - Packages needed to compile the components that follow. -- [Ruby](http://www.ruby-lang.org) - The Ruby programming language. - (We're using **1.8.7**. It comes preinstalled on Mac OS X.) -- [MongoDB](http://www.mongodb.org) - A snappy noSQL database. -- [OpenSSL](http://www.openssl.org/) - An encryption library. - (It comes preinstalled on Mac OS X and Ubuntu.) -- [ImageMagick](http://www.imagemagick.org/) - An Image processing library used - to resize uploaded photos. -- [Git](http://git-scm.com/) - The fast version control system. - -After you have Ruby installed on your system, you will need to get RubyGems, -then install Bundler: - -- [RubyGems](http://rubygems.org/) - Source for Ruby gems. -- [Bundler](http://gembundler.com/) - Gem management tool for Ruby projects. - -**We suggest using a package management system to download these dependencies. -Trust us, it's going to make your life a lot easier. If you're using Mac OS X, -you can use [homebrew](http://mxcl.github.com/homebrew/); if you're using -Ubuntu, just use [Synaptic](http://www.nongnu.org/synaptic/) (it comes -pre-installed); if you're using Fedora simply use -[yum](http://yum.baseurl.org/). The instructions below assume you have these -installed.** - -### Build Tools - -To install build tools on **Ubuntu**, run the following (includes the gcc and -xml parsing dependencies): - - sudo apt-get install build-essential libxslt1.1 libxslt1-dev libxml2 - -To install build tools on **Fedora**, run the following: - - sudo yum install libxslt libxslt-devel libxml2 libxml2-devel - -To install build tools on **Mac OS X**, you need to download and install -[Xcode](http://developer.apple.com/technologies/tools/xcode.html). - -### Ruby - -To install Ruby 1.8.7 on **Ubuntu**, run the following command: - - sudo apt-get install ruby-full - -Please note that you need to have Universe enabled in your -/etc/apt/sources.list file to install ruby using apt-get. - -At this time Fedora does not have Ruby 1.8.7. As a workaround it is possible to -use [rvm](http://rvm.beginrescueend.com/) with a locally compiled Ruby -installation. A semi automated method for doing this is available. It is -highly recommended that you review the script before running it so you -understand what will occur. The script can be executed by running the -following command: - - ./script/bootstrap-fedora-diaspora.sh - -After reviewing and executing the above script you will need to follow the -"MongoDB" section and then you should skip all the way down to "Start Mongo". - -If you're on **Mac OS X**, you already have Ruby on your system. Yay! - -### MongoDB - -To install MongoDB on **Fedora**, use the official repositories - - sudo yum install mongodb-server - -Ensure that the server is started at system reboot: - - sudo chkconfig mongod on - -To install MongoDB on **Ubuntu**, add the official MongoDB repository -[here](http://www.mongodb.org/display/DOCS/Ubuntu+and+Debian+packages). - -For Lucid, add the following line to your /etc/apt/sources.list (for other -distros, see http://www.mongodb.org/display/DOCS/Ubuntu+and+Debian+packages): - - deb http://downloads.mongodb.org/distros/ubuntu 10.4 10gen - -Then run: - sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10 - sudo apt-get update - sudo apt-get install mongodb-stable - -You can also run the binary directly by doing the following: - -If you're running a 32-bit system, run: - - wget http://fastdl.mongodb.org/linux/mongodb-linux-i686-1.6.2.tgz - -If you're running a 64-bit system, run: - - wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-1.6.2.tgz - -Then run: - - # extract - tar xzf mongodb-linux-i686-1.4.0.tgz - # create the required data directory - sudo mkdir -p /data/db - sudo chmod -Rv 777 /data/ - - -To install MongoDB on **Mac OS X**, run the following: - - brew install mongo - sudo mkdir -p /data/db - sudo chmod -Rv 777 /data/ - -### OpenSSL - -If you're running either **Ubuntu**, **Fedora** or **Mac OS X** you already -have OpenSSL installed! - -### ImageMagick - -To install ImageMagick on **Ubuntu**, run the following: - - sudo apt-get install imagemagick libmagick9-dev - -To install ImageMagick on **Fedora**, run the following: - - sudo yum install ImageMagick - -To install ImageMagick on **Mac OS X**, run the following: - - brew install imagemagick - -### Git - -To install Git on **Ubuntu**, run the following: - - sudo apt-get install git-core - -To install Git on **Fedora**, run the following: - - sudo yum install git - - -To install Git on **Mac OS X**, run the following: - - brew install git - - -### Rubygems - -On **Ubuntu** 10.04, run the following: - - sudo add-apt-repository ppa:maco.m/ruby - sudo apt-get update - sudo apt-get install rubygems - -This PPA is maintained by an Ubuntu Developer. For Ubuntu 10.10, this version -of rubygems is in the repositories. - -On **Fedora**, run the following: - - sudo yum install rubygems - -On **Mac OS X**, RubyGems comes preinstalled; however, you might need to update -it for use with the latest Bundler. To update RubyGems, run `sudo gem update ---system`. - - -### Bundler - -After RubyGems is updated, simply run `sudo gem install bundler` to get -Bundler. If you're using Ubuntu repository .debs, bundler is found at -/var/lib/gems/1.8/bin/bundle - - -## Getting Diaspora - - git clone http://github.com/diaspora/diaspora.git - -If you have never used github before, their -[help desk](http://help.github.com/) has a pretty awesome guide on getting -setup. - - -## Running Diaspora - -### Install required gems - -To start the app server for the first time, you need to use Bundler to install -Diaspora's gem depencencies. Run `bundle install` from Diaspora's root -directory. Bundler will also warn you if there is a new dependency and you -need to bundle install again. - -### Start Mongo - -If you installed the Ubuntu package, MongoDB should already be running (if not, -run `service mongodb start`). If you installed the binary manually, run `sudo -mongod` from where mongo is installed to start mongo. - -If you installed the Fedora package, MongoDB will need to be started via -`service mongod start`. If you installed the binary manually, run `sudo -mongod` from where Mongo is installed to start Mongo. - -If you installed the OsX package through "brew", MongoDB will need to be -started via `sudo launchctl load -/Library/LaunchDaemons/org.mongodb.mongod.plist`. (before you have to go to -/Library/LaunchDaemons and add a symlink to -/usr/local/Cellar/mongodb/1.6.2-x86_64/org.mongodb.mongod.plist) - -Diaspora will not run unless Mongo is running. Mongo will not run by default, -and will need to be started every time you wish to use or run the test suite -for Diaspora. - -### Configure Diaspora - -Diaspora needs to know where on the internet it is. Copy config/app_config_example.yml -to config/app_config.yml, put your url into the url field, and make any other -needed configuration changes. - -### Run the server - -`./script/server` will start both thin and the websocket server. If you want -to run a different app server, you will have to run them separately. See below -for instructions. - -### Run the app server - -Once mongo is running and bundler has finished, run `bundle exec thin start` -from the root Diaspora directory. This will start the app server in -development mode[.](http://bit.ly/9mwtUw) - -### Run the websocket server - -run `bundle exec ruby ./script/websocket_server` to start the websocket server -on port 8080. Change the port in config/app_config.yml. - -### Logging in with a sample user - -Run `rake db:seed:tom`, then login with user `tom` and password `evankorth`. -More details in db/seeds/tom.rb. - -### Testing - -Diaspora's test suite uses [rspec](http://rspec.info/), a behavior driven -testing framework. In order to run the tests, run `bundle exec rspec spec`. ## Resources diff --git a/config/deploy_config.yml b/config/deploy_config.yml index c653b6565..9bd7a6b96 100644 --- a/config/deploy_config.yml +++ b/config/deploy_config.yml @@ -7,7 +7,7 @@ cross_server: deploy_to: '/usr/local/app/diaspora' user: 'root' - repo: 'git@github.com:diaspora/diaspora.git' + repo: 'git://github.com/diaspora/diaspora.git' branch: 'master' default_env: 'development' servers: diff --git a/config/locales/devise.fr-informal.yml b/config/locales/devise.fr-informal.yml new file mode 100644 index 000000000..9578af9d9 --- /dev/null +++ b/config/locales/devise.fr-informal.yml @@ -0,0 +1,41 @@ +# Copyright (c) 2010, Diaspora Inc. This file is +# licensed under the Affero General Public License version 3. See +# the COPYRIGHT file. + + +fr-informal: + errors: + messages: + not_found: "introuvable" + already_confirmed: "a déjà été confirmé" + not_locked: "n’a pas été verrouillé" + + devise: + failure: + unauthenticated: 'Tu dois te connecter ou t’inscrire avant de continuer.' + unconfirmed: 'Tu dois confirmer ton compte avant de continuer.' + locked: 'Ton compte est verrouillé.' + invalid: 'Adresse e-mail ou mot de passe invalide.' + invalid_token: 'Jeton d’authentification invalide.' + timeout: 'Ta session a expiré, merci de te connecter de nouveau afin de continuer.' + inactive: 'Ton compte n’a pas encore été activé.' + sessions: + signed_in: 'Connecté avec succès.' + signed_out: 'Déconnecté avec succès.' + passwords: + send_instructions: 'Tu vas recevoir dans quelques minutes un e-mail contenant des instructions t’expliquant comment réinitialiser ton mot de passe.' + updated: 'Ton mot de passe a été modifié avec succès. Tu es à présent connecté.' + confirmations: + send_instructions: 'Tu vas recevoir dans quelques minutes un e-mail contenant des instructions t’expliquant comment confirmer ton compte.' + confirmed: 'Ton compte a été confirmé avec succès. Tu es à présent connecté.' + registrations: + signed_up: 'Tu t’es inscrit avec succès. Si activée, une confirmation a été envoyée sur ton adresse e-mail.' + updated: 'Tu as mis à jour ton compte avec succès.' + destroyed: 'Au revoir ! Ton compte a été résilié avec succès. Nous espérons te revoir très bientôt.' + unlocks: + send_instructions: 'Tu vas recevoir dans quelques minutes un e-mail contenant des instructions t’expliquant comment déverrouiller ton compte.' + unlocked: 'Ton compte a été déverrouillé avec succès. Tu es à présent connecté.' + mailer: + confirmation_instructions: 'Instructions de confirmation' + reset_password_instructions: 'Réinitialiser les instructions du mot de passe' + unlock_instructions: 'Instructions de déverrouillage' diff --git a/config/locales/fr-informal.yml b/config/locales/fr-informal.yml new file mode 100644 index 000000000..627674ca5 --- /dev/null +++ b/config/locales/fr-informal.yml @@ -0,0 +1,205 @@ +# Copyright (c) 2010, Diaspora Inc. This file is +# licensed under the Affero General Public License version 3. See +# the COPYRIGHT file. + + +# Localization file for French (Informal Honorifics). Add more files in this directory for other locales. +# See http://github.com/svenfuchs/rails-i18n/tree/master/rails%2Flocale for starting points. + +fr-informal: + hello: "Bonjour tout le monde" + application: + helper: + unknown_person: "personne inconnue" + new_requests: "nouvelles requêtes" + dashboards: + helper: + home: "accueil" + error_messages: + helper: + invalid_fields: "Champs invalides" + correct_the_following_errors_and_try_again: "Corrige les erreurs suivantes, puis réessaie." + people: + helper: + results_for: " résultats concernant %{params}" + people_on_pod_are_aware_of: " personnes agissant comme des automates sont conscients de" + layouts: + application: + edit_profile: "éditer le profil" + logout: "déconnexion" + shared: + aspect_nav: + all_aspects: "Tous les aspects" + manage: "Gérer" + manage_your_aspects: "Gérer tes aspects" + sub_header: + all_aspects: "Tous les aspects" + manage_aspects: "Gérer les aspects" + publisher: + share: "Partager" + aspect_friends: + add_friends: "ajouter des amis" + albums: + album: + you: "toi" + new_album: + create: "créer" + add_a_new_album: "Ajouter un nouvel album" + show: + edit_album: "Éditer l’album" + albums: "albums" + updated: "mis à jour" + by: "par" + edit: + editing: "Édition" + updated: "mis à jour" + are_you_sure: "Es-tu sûr(e) ?" + delete_album: "Supprimer l’album" + cancel: "Annuler" + index: + home: "accueil" + new_album: "Nouvel album" + create: + success: "Tu as créé un album nommé %{name}." + update: + success: "L’album %{name} a été édité avec succès." + failure: "L’édition de l’album %{name} a échoué." + destroy: + success: "L’album %{name} a été supprimé." + helper: + friends_albums: "Albums d’amis" + your_albums: "Tes albums" + aspects: + index: + photos: "photos" + show: + photos: "photos" + manage: + add_a_new_aspect: "Ajouter un nouvel aspect" + add_a_new_friend: "Ajouter un nouvel ami" + show: "Afficher" + update_aspects: "Mettre à jour les aspects" + requests: "Requêtes" + ignore_remove: "Ignorer/Supprimer" + new_aspect: + add_a_new_aspect: "Ajouter un nouvel aspect" + create: "Créer" + create: + success:"Clique sur le symbole plus situé sur le côté gauche afin que Diaspora détermine qui peut voir ton nouvel aspect." + destroy: + success: "%{name} a été supprimé avec succès." + update: + success: "Ton aspect, %{name}, a été édité avec succès." + move_friends: + failure: "L’édition de l’aspect concernant l’ami %{real_name} a échoué." + success: "Les aspects ont été édités avec succès." + move_friend: + error: "ne fonctionne pas %{inspect}" + notice: "Tu montres à présent à ton ami un aspect différent au tien." + helper: + remove: "supprimer" + aspect_not_empty: "L’aspect n’est pas vide" + users: + edit: + cancel: "Annuler" + update_profile: "Mettre à jour le profil" + home: "Accueil" + diaspora_username: "NOM D’UTILISATEUR DIASPORA" + info: "Information" + picture: "Image" + editing_profile: "Édition du profil" + albums: "Albums" + you_dont_have_any_photos: "Tu n’as aucune photo ! Rends-toi sur la page" + page_to_upload_some: "afin d’en transférer quelques-unes." + comments: + comment: + ago: "il y a" + new_comment: + comment: "Commentaire" + photos: + show: + prev: "précédent" + full_size: "taille réelle" + next: "suivant" + edit_photo: "Éditer la photo" + delete_photo: "Supprimer la photo" + are_you_sure: "Es-tu sûr(e) ?" + comments: "commentaires" + edit: + editing: "Édition" + are_you_sure: "Es-tu sûr(e) ?" + delete_photo: "Supprimer la photo" + photo: + show_comments: "afficher les commentaires" + posted_a_new_photo_to: "a publié une nouvelle photo sur" + new: + new_photo: "Nouvelle photo" + back_to_list: "Retourner à la liste" + post_it: "publie-la !" + create: + runtime_error: "Le transfert de la photo a échoué. Es-tu sûr(e) que ta ceinture de sécurité est bien attachée ?" + integrity_error: "Le transfert de la photo a échoué. Es-tu sûr(e) que c’était bien une image ?" + type_error: "Le transfert de la photo a échoué. Es-tu sûr(e) que l’image était bien ajoutée ?" + update: + notice: "La photo a été mise à jour avec succès." + error: "Échec de l’édition de la photo." + destroy: + notice: "Photo supprimée." + registrations: + new: + sign_up: "Inscription" + create: + success: "Tu as rejoint Diaspora !" + status_messages: + new_status_message: + tell_me_something_good: "dis-moi quelque chose de bien" + oh_yeah: "oh ouais !" + status_message: + show_comments: "afficher les commentaires" + delete: "Supprimer" + are_you_sure: "Es-tu sûr(e) ?" + show: + status_message: "Message d’état" + comments: "commentaires" + are_you_sure: "Es-tu sûr(e) ?" + destroy: "Détruire" + view_all: "Tout voir" + message: "Message" + owner: "Propriétaire" + helper: + no_message_to_display: "Aucun message à afficher." + people: + person: + add_friend: "ajouter un ami" + pending_request: "requête en attente" + index: + add_friend: "ajouter un ami" + real_name: "nom réel" + diaspora_handle: "maniement de Diaspora" + thats_you: "c’est toi !" + friend_request_pending: "Requête d’ami en attente" + you_have_a_friend_request_from_this_person: "tu as une requête d’ami de la part de cette personne" + new: + new_person: "Nouvelle personne" + back_to_list: "Retourner à la liste" + show: + last_seen: "dernière connexion : %{how_long_ago}" + friends_since: "amis depuis : %{how_long_ago}" + save: "sauvegarder" + are_you_sure: "Es-tu sûr(e) ?" + remove_friend: "supprimer un ami" + requests: + new_request: + add_a_new_friend_to: "Ajouter un ami à" + enter_a_diaspora_username: "Saisi un nom d’utilisateur Diaspora :" + your_diaspora_username_is: "Ton nom d’utilisateur Diaspora est : %{diaspora_handle}" + friends_username: "Nom d’utilisateur de l’ami" + destroy: + success: "Vous êtes à présent amis." + error: "Merci de sélectionner un aspect !" + ignore: "Requête d’ami ignorée." + create: + error: "Aucun résultat Diaspora n’a été trouvé avec cette adresse e-mail !" + already_friends: "Tu es déjà ami avec %{destination_url}!" + success: "Une requête d’ami a été envoyée à %{destination_url}." + horribly_wrong: "Quelque chose d’horrible s’est produit." \ No newline at end of file diff --git a/config/locales/fr.yml b/config/locales/fr.yml index 9754f52a0..6d77dcf00 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -145,7 +145,7 @@ fr: index: add_friend: "ajouter un ami" real_name: "nom réel" - diaspora_handle: "maniement de diaspora" + diaspora_handle: "maniement de Diaspora" thats_you: "c’est vous !" friend_request_pending: "Requête d’ami en attente" you_have_a_friend_request_from_this_person: "vous avez une requête d’ami de la part de cette personne" diff --git a/config/locales/ru.yml b/config/locales/ru.yml index fe944aa59..d0d9e8039 100644 --- a/config/locales/ru.yml +++ b/config/locales/ru.yml @@ -3,8 +3,141 @@ # the COPYRIGHT file. -# Sample localization file for English. Add more files in this directory for other locales. +# Sample localization file for Russian. Add more files in this directory for other locales. # See http://github.com/svenfuchs/rails-i18n/tree/master/rails%2Flocale for starting points. ru: hello: "Привет, мир" + layouts: + application: + edit_profile: "редактировать профиль" + logout: "выйти" + shared: + aspect_nav: + all_aspects: "Все аспекты" + manage: "Управление" + manage_your_aspects: "Управление вашими аспектами" + sub_header: + all_aspects: "Все аспекты" + manage_aspects: "Управление аспектами" + publisher: + share: "Опубликовать" + aspect_friends: + add_friends: "добавить друзей" + albums: + album: + you: "Вы" + new_album: + create: "создать" + add_a_new_album: "Добавить новый альбом" + show: + edit_album: "Редактировать альбом" + albums: "альбомы" + updated: "обновленные" + by: "по" + edit: + editing: "Редактирование" + updated: "обновлено" + are_you_sure: "Вы уверены?" + delete_album: "Удалить альбом" + cancel: "Отмена" + index: + home: "домой" + new_album: "Новый альбом" + create: + success: "Вы создали новый альбом %{name}." + update: + success: "Альбом %{name} успешно редактирован." + failure: "Невозможно редактировать альбом %{name}." + destroy: + success: "Альбом %{name} удален." + aspects: + index: + photos: "фотографии" + show: + photos: "фотографии" + manage: + add_a_new_aspect: "Добавить аспект" + add_a_new_friend: "Добавить друга" + show: "Показать" + update_aspects: "Обновить аспекты" + requests: "Запросы" + ignore_remove: "Игнорировать/Удалить" + new_aspect: + add_a_new_aspect: "Добавить аспект" + create: "Создать" + create: + success:"Нажмите на плюс слева, для того, что-бы указать Diaspora тех, кто может видеть ваш новый аспект." + users: + edit: + cancel: "Отмена" + update_profile: "Обновить профиль" + home: "Домой" + diaspora_username: "Имя пользователя DIASPORA" + info: "Информация" + picture: "Аватар" + editing_profile: "Редактирование профиля" + albums: "Альбомы" + you_dont_have_any_photos: "У вас нет ни одной фотографии! Перейдите на " + page_to_upload_some: "страницу для загрузки." + comments: + comment: + ago: "ранее" + new_comment: + comment: "Комментарий" + photos: + show: + prev: "предыдущая" + full_size: "полный размер" + next: "следующая" + edit_photo: "Редактировать" + delete_photo: "Удалить" + are_you_sure: "Вы уверены?" + comments: "комментарии" + edit: + editing: "Редактирование" + are_you_sure: "Вы уверены?" + delete_photo: "Удалить фотографию" + photo: + show_comments: "показать комментарии" + posted_a_new_photo_to: "опубликовано в" + new: + new_photo: "Новая фотография" + back_to_list: "Вернуться к списку" + post_it: "опубликовать!" + registrations: + new: + sign_up: "Выйти" + status_messages: + new_status_message: + tell_me_something_good: "скажи мне что-нибудь хорошее" + oh_yeah: "о да!" + status_message: + show_comments: "показать комментарии" + delete: "Удалить" + are_you_sure: "Вы уверены?" + show: + status_message: "Сообщение о статусе" + comments: "комментарии" + are_you_sure: "Вы уверены?" + destroy: "Уничтожить" + view_all: "Показать все" + message: "Сообщение" + owner: "Владелец" + people: + index: + add_friend: "добавить друга" + real_name: "настоящее имя" + diaspora_handle: "идентификатор diaspora" + thats_you: "это Вы!" + friend_request_pending: "запрос на дружбу в ожидании" + you_have_a_friend_request_from_this_person: "у вас есть запрос на дружбу от этого человека" + new: + new_person: "Новая персона" + back_to_list: "Обратно к списку" + show: + last_seen: "последний раз был %{how_long_ago}" + friends_since: "друзья с %{how_long_ago}" + save: "сохранить" + are_you_sure: "Вы уверены?" + remove_friend: "удалить друга" diff --git a/config/routes.rb b/config/routes.rb index f4f49b01d..0ac115b76 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -33,7 +33,6 @@ Diaspora::Application.routes.draw do match 'signup', :to => 'registrations#new', :as => "new_user_registration" match 'get_to_the_choppa', :to => redirect("/signup") - match "/finger", :to => AsyncController #public routes # match 'webfinger', :to => 'publics#webfinger'