
Security News
Follow-up and Clarification on Recent Malicious Ruby Gems Campaign
A clarification on our recent research investigating 60 malicious Ruby gems.
$ git clone git://github.com/dreamr/ruby-slippers.git myblog
$ cd myblog
$ gem install bundler
$ bundle
$ rake install
$ -> Blog name: My new blog
$ Installing your blog to my-new-blog
$ Blog installed!
$ rake new
$ -> Title: My new blog post!
$ Creating and opening my-new-blog-post (opens in your text editor!)
$ rake publish (commits, pushes, publishes then opens in your browser!)
RubySlippers is based on Toto and aims to achieve their goals as well as our own. Hosting a ruby based free blog shouldn't be hard. We want to take that a step further and say it should be easy. Easy as pie. Easy as my best friend's Mom. Easy as a 1 click installer.
Oh yeah, MRI, bytecode whatever. If it is Ruby, it should run.
RubySlippers comes with a basic default theme for you to mangle. I hope to release more themes shortly and will accept your submitted themes.
$ git add .
$ git commit -m 'updated blog'
$ git push heroku
Once you have created the remote git repo, and pushed your changes to it, you can run RubySlippers with any Rack compliant web server, such as thin, mongrel or unicorn.
I like to use shotgun as it reloads while I work
$ cd myblog
$ bundle
$ shotgun
With thin, you would do something like:
$ thin start -R config.ru
With unicorn, you can just do:
$ unicorn
You can configure ruby-slippers, by modifying the config.ru file. For example, if you want to set the blog author to 'John Galt',
you could add set :author, 'John Galt'
inside the RubySlippers::Engine::App.new
block. Here are the defaults, to get you started:
#
# Add your settings here
# set [:setting], [value]
#
set :author, "Dreamr" # blog author
set :title, "RubySlippers, the smartest blog engine in all of Oz!" # site title
# set :root, "index" # page to load on /
set :date, lambda {|now| now.strftime("%m/%d/%Y") } # date format for articles
# set :markdown, :smart # use markdown + smart-mode
# set :disqus, false # disqus id, or false
set :summary, :max => 300, :delim => /~/ # length of article summary and delimiter
# set :ext, 'txt' # file extension for articles
# set :cache, 28800 # cache duration, in seconds
set :tag_separator, ', ' # tag separator for articles
set :date, lambda {|now| now.strftime("%B #{now.day.ordinal} %Y") }
# set this to your local port. I use shotgun, so 9393.
set :url, "http://localhost:9393" if ENV['RACK_ENV'] == 'development'
# to use haml, add the gem to your Gemfile and bundle, then uncomment this
# and redo your templates using haml and renamed to html.haml
# set :to_html, lambda { |path, page, binding|
# Haml::Engine.new(File.read("#{path}/#{page}.html.haml"),
# :attr_wrapper => '"',
# :filename => path ).render(binding)
# }
Copyright (c) 2011 dreamr. See LICENSE for details.
FAQs
Unknown package
We found that ruby-slippers demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
A clarification on our recent research investigating 60 malicious Ruby gems.
Security News
ESLint now supports parallel linting with a new --concurrency flag, delivering major speed gains and closing a 10-year-old feature request.
Research
/Security News
A malicious Go module posing as an SSH brute forcer exfiltrates stolen credentials to a Telegram bot controlled by a Russian-speaking threat actor.