Не уверен в проблеме, но вы можете заставить работать базовый подход? Часть serve '/javascripts', from: '/app/javascripts'
является необязательной. Из Readme только с javascript:
require 'sinatra/assetpack'
class App < Sinatra::Base
set :root, File.dirname(__FILE__)
register Sinatra::AssetPack
assets {
# The second parameter defines where the compressed version will be served.
# (Note: that parameter is optional, AssetPack will figure it out.)
js :app, '/js/app.js', [
'/js/vendor/**/*.js',
'/js/app/**/*.js'
]
}
end
и для чего стоит, мой assets
блок выглядит так:
assets {
js :main, [
'/js/jquery.js',
'/js/application.js',
]
С jquery в public/js
и application.coffee в app/js
. Тег сценария в моем макете (haml) - =js :main
.