This gist shows how to create a GIF screencast using only free OS X tools: QuickTime, ffmpeg, and gifsicle.
To capture the video (filesize: 19MB), using the free "QuickTime Player" application:
| #!/bin/bash | |
| # | |
| # => $ sudo apt-get install -y --force-yes curl; sudo su - -c "bash < <(curl -sL http://is.gd/..........)" | |
| # | |
| # Deploy Fat Free CRM (rails3 branch) to a freshly installed Ubuntu machine. | |
| # -------------------------------------------------------------------------- | |
| # | |
| # Steps: | |
| # | |
| # *) Install required packages (git, postgresql, etc.) |
| $('[placeholder]').focus(function() { | |
| var input = $(this); | |
| if (input.val() == input.attr('placeholder')) { | |
| input.val(''); | |
| input.removeClass('placeholder'); | |
| } | |
| }).blur(function() { | |
| var input = $(this); | |
| if (input.val() == '' || input.val() == input.attr('placeholder')) { | |
| input.addClass('placeholder'); |
| # RSpec 2.0 syntax Cheet Sheet by http://ApproachE.com | |
| # defining spec within a module will automatically pick Player::MovieList as a 'subject' (see below) | |
| module Player | |
| describe MovieList, "with optional description" do | |
| it "is pending example, so that you can write ones quickly" | |
| it "is already working example that we want to suspend from failing temporarily" do | |
| pending("working on another feature that temporarily breaks this one") |
| # Русский перевод для https://github.com/plataformatec/devise/tree/v1.4.7 | |
| # Другие переводы на http://github.com/plataformatec/devise/wiki/I18n | |
| ru: | |
| errors: | |
| messages: | |
| expired: "устарела. Пожалуйста, запросите новую" | |
| not_found: "не найдена" | |
| already_confirmed: "уже подтверждена. Пожалуйста, попробуйте войти в систему" | |
| not_locked: "не заблокирована" |
| (function($){ | |
| $('.pagination a[data-remote=true]').live('ajax:success', function(e){ window.history.pushState('', '', $(e.target).attr('href')) }) | |
| $(window).bind('popstate', function(){ $.ajax({url:window.location, dataType:'script'}) ; return true }); | |
| })(jQuery); |
| # Capistrano configuration | |
| # | |
| # require 'new_relic/recipes' - Newrelic notification about deployment | |
| # require 'capistrano/ext/multistage' - We use 2 deployment environment: staging and production. | |
| # set :deploy_via, :remote_cache - fetch only latest changes during deployment | |
| # set :normalize_asset_timestamps - no need to touch (date modification) every assets | |
| # "deploy:web:disable" - traditional maintenance page (during DB migrations deployment) | |
| # task :restart - Unicorn with preload_app should be reloaded by USR2+QUIT signals, not HUP |
| _G.bicycle = { | |
| action = { }, | |
| basket = { }, | |
| access = function (path) | |
| local file = io.open(path, "r") | |
| if file == nil then return false end | |
| io.close(file) |
If the namespace is not used then the commands will perform on top of the default database.
bundle exec rake db:create
bundle exec rake db:migrate
By using the namespace we are going to use all the configuration for our alternate DB.
bundle exec rake store:db:create
bundle exec rake store:db:migrate