komicless 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a52a360035a43612c93f476d426112d035945a32
4
- data.tar.gz: 7e0c901d70af3d1166d6c0dfbf9576cd3b3b9edc
3
+ metadata.gz: 11b132bd209123ae5d41bbff277316e691846d93
4
+ data.tar.gz: 3ee7acd4cf82820225519c4cec32df29a210f9c0
5
5
  SHA512:
6
- metadata.gz: 255815bae061831dd6cd1c3b8cfb6fc69434ff7d274488d6376bd46752ef389514b102891ad2c0ef12d91f107d09acf5066699646f6858ce835478f77977aed3
7
- data.tar.gz: 4e4f13c18dea4326151b280be31b26b74549281af63968a5aad675b048e0cb94b229600826a23e08686ec48740eca8b863110c7933a31d4aa1cfcd008e6e06f9
6
+ metadata.gz: 828a9d889b3d0e45eda0faa09bc9291b9b1787f98da6bdf1390741e2993a8635847d39df6ca631df6ebf6c0851311c529225dd23ce70580c2aa2d8c3525d778b
7
+ data.tar.gz: 9c6eefbe0b17b469f955a909505ab77c7d070ae3df5604eb815c3a865b017afe64c07dd8393eb3e731c639a88ad5ba403aa7988178a28b47444186118388cf6f
data/README.md CHANGED
@@ -1,6 +1,14 @@
1
1
  # Komicless
2
2
 
3
- Komicless is an (alternative) server for [ComicGlass](http://comicglass.net/)
3
+ Komicless is an (alternative) server for [ComicGlass](http://comicglass.net/).
4
+ They already provides a Win server, a Mac server, and a PHP version.
5
+
6
+ This work should work with recent Ruby, without requiring root privilege and PHP.
7
+
8
+ # Limitations
9
+
10
+ - Unlike offical servers, Komicless only hosts one directory (not really a problem when we can symlink dirs).
11
+ - uPnP is not supported yet.
4
12
 
5
13
  ## Installation
6
14
 
@@ -8,7 +16,12 @@ Komicless is an (alternative) server for [ComicGlass](http://comicglass.net/)
8
16
 
9
17
  ## Usage
10
18
 
11
- TODO: Write usage instructions here
19
+ $ komicless --port=10080 --root=/files
20
+ Thin web server (v1.6.1 codename Death Proof)
21
+ Maximum connections set to 1024
22
+ Listening on 0.0.0.0:10080, CTRL+C to stop
23
+
24
+ The files can be downloaded in ComicGlass, after manually add a server.
12
25
 
13
26
  ## Contributing
14
27
 
@@ -17,3 +30,5 @@ TODO: Write usage instructions here
17
30
  3. Commit your changes (`git commit -am 'Add some feature'`)
18
31
  4. Push to the branch (`git push origin my-new-feature`)
19
32
  5. Create new Pull Request
33
+
34
+ BTW any good guy knows about uPnP?
data/komicless.gemspec CHANGED
@@ -20,6 +20,6 @@ Gem::Specification.new do |spec|
20
20
 
21
21
  spec.add_development_dependency "bundler", "~> 1.3"
22
22
  spec.add_development_dependency "rake"
23
- spec.add_runtime_dependency "haml"
23
+ spec.add_runtime_dependency "thin"
24
24
  spec.add_runtime_dependency "rack"
25
25
  end
@@ -0,0 +1,24 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>Komicless MediaServer</title>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
6
+ </head>
7
+ <body>
8
+ <ul>
9
+ <% @files.each do |(url, basename, size, type, mtime)| %>
10
+ <li>
11
+ <% if type=="directory" %>
12
+ <a href="<%= url %>" >
13
+ <%= basename %>
14
+ </a>
15
+ <% else %>
16
+ <a href="<%= url %>" booktitle="<%= basename %>" booksize="<%= size %>" >
17
+ <%= basename %>
18
+ </a>
19
+ <% end %>
20
+ </li>
21
+ <% end %>
22
+ </ul>
23
+ </body>
24
+ </html>
@@ -1,10 +1,10 @@
1
1
  require 'rack'
2
- require 'haml'
2
+ require 'erb'
3
3
 
4
4
  module Komicless
5
5
 
6
- INDEX_HAML = open( File.expand_path "index.haml", File.dirname(__FILE__) ).read.freeze
7
- INDEX = ::Haml::Engine.new INDEX_HAML, { :attr_wrapper => '"' } # or there will be ' in filenames
6
+ INDEX_ERB = open( File.expand_path "index.html.erb", File.dirname(__FILE__) ).read.freeze
7
+ INDEX = ::ERB.new INDEX_ERB
8
8
 
9
9
  class Server < ::Rack::Directory
10
10
 
@@ -21,9 +21,11 @@ module Komicless
21
21
  int
22
22
  end
23
23
 
24
- # render with our HAML template
24
+ # render with our template
25
25
  def each
26
- page = INDEX.render(scope=Object.new, locals={ :files => @files } )
26
+ page = INDEX.result binding
27
+ # strip space. This regex from http://stackoverflow.com/a/8828408/327815
28
+ page.gsub!(%r%(?<=[\^])\t{2,}|(?<=[>])\s{2,}(?=[<])|(?<=[>])\s{2,11}(?=[<])|(?=[\n])\s{2,}%,"")
27
29
  page.each_line{|l| yield l }
28
30
  end
29
31
 
@@ -1,3 +1,3 @@
1
1
  module Komicless
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: komicless
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Wang Guan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-12-09 00:00:00.000000000 Z
11
+ date: 2013-12-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -39,7 +39,7 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: haml
42
+ name: thin
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
@@ -83,6 +83,7 @@ files:
83
83
  - komicless.gemspec
84
84
  - lib/komicless.rb
85
85
  - lib/komicless/index.haml
86
+ - lib/komicless/index.html.erb
86
87
  - lib/komicless/server.rb
87
88
  - lib/komicless/version.rb
88
89
  homepage: https://github.com/Jokester/Komicless