From bddfb9ba1f3dab22c28456c122beb57708cd7b4a Mon Sep 17 00:00:00 2001 From: Jon Rowe Date: Wed, 5 Nov 2014 08:23:08 +1100 Subject: [PATCH 1/2] use middleman favicon maker --- Gemfile | 3 ++- Gemfile.lock | 7 +++++++ config.rb | 1 + 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/Gemfile b/Gemfile index 008d2ac83..a82130146 100644 --- a/Gemfile +++ b/Gemfile @@ -1,10 +1,11 @@ source 'https://rubygems.org' -ruby "2.1.2" +ruby "2.1.4" gem "middleman", "~> 3.3.6" gem "middleman-livereload", "~> 3.3.4" gem "middleman-syntax", :github => "middleman/middleman-syntax" +gem "middleman-favicon-maker" gem "middleman-deploy" gem "bourbon" diff --git a/Gemfile.lock b/Gemfile.lock index cfceec8f5..94bacb934 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -37,12 +37,15 @@ GEM sass (>= 3.3.0, < 3.5) compass-import-once (1.0.5) sass (>= 3.2, < 3.5) + docile (1.1.5) em-websocket (0.5.1) eventmachine (>= 0.12.9) http_parser.rb (~> 0.6.0) erubis (2.7.0) eventmachine (1.0.3) execjs (2.2.2) + favicon_maker (1.3) + docile (~> 1.1) ffi (1.9.6) haml (4.0.5) tilt @@ -85,6 +88,9 @@ GEM middleman-core (>= 3.2) net-sftp ptools + middleman-favicon-maker (3.7) + favicon_maker (~> 1.3) + middleman-core (>= 3.0.0) middleman-livereload (3.3.4) em-websocket (~> 0.5.1) middleman-core (~> 3.2) @@ -152,6 +158,7 @@ DEPENDENCIES bourbon middleman (~> 3.3.6) middleman-deploy + middleman-favicon-maker middleman-livereload (~> 3.3.4) middleman-syntax! neat diff --git a/config.rb b/config.rb index 0195f17f1..57569052f 100644 --- a/config.rb +++ b/config.rb @@ -23,6 +23,7 @@ configure :build do activate :minify_css activate :minify_javascript + activate :favicon_maker end activate :deploy do |deploy| From b58011b27d4fa648deff56d76408e74e6bf4f02d Mon Sep 17 00:00:00 2001 From: Jon Rowe Date: Wed, 5 Nov 2014 08:28:52 +1100 Subject: [PATCH 2/2] add favicons --- config.rb | 26 +++++++++++++++++++++++++- source/_favicon_template.png | Bin 0 -> 10148 bytes 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 source/_favicon_template.png diff --git a/config.rb b/config.rb index 57569052f..598f726b0 100644 --- a/config.rb +++ b/config.rb @@ -23,7 +23,31 @@ configure :build do activate :minify_css activate :minify_javascript - activate :favicon_maker + activate :favicon_maker, icons: { "_favicon_template.png" => + [ + { icon: "apple-touch-icon-152x152-precomposed.png" }, # Same as apple-touch-icon-57x57.png, for retina iPad with iOS7. + { icon: "apple-touch-icon-144x144-precomposed.png" }, # Same as apple-touch-icon-57x57.png, for retina iPad with iOS6 or prior. + { icon: "apple-touch-icon-120x120-precomposed.png" }, # Same as apple-touch-icon-57x57.png, for retina iPhone with iOS7. + { icon: "apple-touch-icon-114x114-precomposed.png" }, # Same as apple-touch-icon-57x57.png, for retina iPhone with iOS6 or prior. + { icon: "apple-touch-icon-76x76-precomposed.png" }, # Same as apple-touch-icon-57x57.png, for non-retina iPad with iOS7. + { icon: "apple-touch-icon-72x72-precomposed.png" }, # Same as apple-touch-icon-57x57.png, for non-retina iPad with iOS6 or prior. + { icon: "apple-touch-icon-60x60-precomposed.png" }, # Same as apple-touch-icon-57x57.png, for non-retina iPhone with iOS7. + { icon: "apple-touch-icon-57x57-precomposed.png" }, # iPhone and iPad users can turn web pages into icons on their home screen. Such link appears as a regular iOS native application. When this happens, the device looks for a specific picture. The 57x57 resolution is convenient for non-retina iPhone with iOS6 or prior. Learn more in Apple docs. + { icon: "apple-touch-icon-precomposed.png", size: "57x57" }, # Same as apple-touch-icon.png, expect that is already have rounded corners (but neither drop shadow nor gloss effect). + { icon: "apple-touch-icon.png", size: "57x57" }, # Same as apple-touch-icon-57x57.png, for "default" requests, as some devices may look for this specific file. This picture may save some 404 errors in your HTTP logs. See Apple docs + { icon: "favicon-196x196.png" }, # For Android Chrome M31+. + { icon: "favicon-160x160.png" }, # For Opera Speed Dial (up to Opera 12; this icon is deprecated starting from Opera 15), although the optimal icon is not square but rather 256x160. If Opera is a major platform for you, you should create this icon yourself. + { icon: "favicon-96x96.png" }, # For Google TV. + { icon: "favicon-32x32.png" }, # For Safari on Mac OS. + { icon: "favicon-16x16.png" }, # The classic favicon, displayed in the tabs. + { icon: "favicon.png", size: "16x16" }, # The classic favicon, displayed in the tabs. + { icon: "favicon.ico", size: "64x64,32x32,24x24,16x16" }, # Used by IE, and also by some other browsers if we are not careful. + { icon: "mstile-70x70.png", size: "70x70" }, # For Windows 8 / IE11. + { icon: "mstile-144x144.png", size: "144x144" }, + { icon: "mstile-150x150.png", size: "150x150" }, + { icon: "mstile-310x310.png", size: "310x310" }, + ] + } end activate :deploy do |deploy| diff --git a/source/_favicon_template.png b/source/_favicon_template.png new file mode 100644 index 0000000000000000000000000000000000000000..df0e83a3899856bb47708c76e9f8f3855e0b5953 GIT binary patch literal 10148 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 E0R?R8G5`Po literal 0 HcmV?d00001