squidpress 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.markdown +108 -8
- data/_includes/head.html +10 -2
- data/_includes/post/date.html +4 -4
- metadata +5 -9
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 69a1edc7ef6f116a0140b3fe10dbfa4e0276c18885b9848ea1979895f2620c02
|
|
4
|
+
data.tar.gz: 659827d5eab6f349d67cc71850ce23944c161526d9b247b97cae2aeb2c230d6b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: '0282759af2e8824a307355645787c074474f16060b4463e451f76b8a5332afafc280ab81672e7b4b8c65d4ded45af0f77d95cadd120d937b023f4ac6432cfbc7'
|
|
7
|
+
data.tar.gz: c5227520f2e9913410769353de6a863d473d9291ae414f02548223f7d9fc3ec93c2cdbacbf2ed612b637f4f562fd302707f588ed6b899671cdf427220753c1bd
|
data/README.markdown
CHANGED
|
@@ -2,31 +2,131 @@
|
|
|
2
2
|
|
|
3
3
|
## What is Squidpress?
|
|
4
4
|
|
|
5
|
-
Squidpress is a fork of [Octopress 2.0](https://github.com/imathis/octopress), a [Jekyll](https://
|
|
5
|
+
Squidpress is a fork of [Octopress 2.0](https://github.com/imathis/octopress), a [Jekyll](https://jekyllrb.com) theme/distribution, refactored into a Jekyll theme that works with modern versions of Jekyll.
|
|
6
6
|
|
|
7
7
|
(If you don't know what any of that means, you probably don't need this project!)
|
|
8
8
|
|
|
9
|
-
Octopress was structured as a prebuilt blog template, Rakefile, and plugins, which made it hard to update blogs built with it to newer versions of Jekyll or Jekyll's plugins. Squidpress breaks Octopress's theme out into a separate Jekyll theme that you can add to your own repo; you no longer need to maintain a fork of the Octopress repo or worry about
|
|
9
|
+
Octopress was structured as a prebuilt blog template, Rakefile, and plugins, which made it hard to update blogs built with it to newer versions of Jekyll or Jekyll's plugins. Squidpress breaks Octopress's theme out into a separate [Jekyll gem theme](https://jekyllrb.com/docs/themes/#understanding-gem-based-themes) that you can add to your own repo; you no longer need to maintain a fork of the Octopress repo or worry about how to upgrade to newer Jekyll versions. You can just use this theme as a plugin without keeping a full copy of Octopress in your own repo.
|
|
10
|
+
|
|
11
|
+
## Installation for new users
|
|
12
|
+
|
|
13
|
+
1. Add `gem "squidpress", "~> 0.1"` to your Gemfile.
|
|
14
|
+
2. Add `theme: squidpress` to your `_config.yml`.
|
|
15
|
+
3. Add the following plugins to the `plugins:` config in your `_config.yml`: `squidpress-plugins` and `jekyll-paginate`.
|
|
16
|
+
|
|
17
|
+
You will also need to copy some static assets and templates from this repository into your repo. These should go in the same directory as your blog content.
|
|
18
|
+
|
|
19
|
+
- `atom.xml`
|
|
20
|
+
- `favicon.png`
|
|
21
|
+
- `index.html`
|
|
22
|
+
- `robots.txt`
|
|
23
|
+
- `_includes/asides`
|
|
24
|
+
- `_includes/custom`
|
|
25
|
+
- `_layouts`
|
|
26
|
+
- `blog`
|
|
27
|
+
|
|
28
|
+
## Migration
|
|
29
|
+
|
|
30
|
+
Migrating an existing Octopress blog to Squidpress takes a bit of extra work. Since Octopress installs a number of theme files straight into your git repository alongside your content, you'll need to clear those out first before copying in the static files. You'll also need to make some tweaks to your configuration. This repo includes a migration script to automate that. **Please make sure you've committed all the content of your repo to git before running the migration script, since it deletes files.**
|
|
31
|
+
|
|
32
|
+
To use the migration script, do the following:
|
|
33
|
+
|
|
34
|
+
- Clone this repo
|
|
35
|
+
- In a terminal, `cd` into the repository
|
|
36
|
+
- Run `rake migrate[/path/to/your/repo]`
|
|
37
|
+
|
|
38
|
+
Once you've done this, your site should be good to test out. You can try using it by running `bundle install` in your blog repo, then running `jekyll serve`. If everything looks good, you should be good to go! Make sure to commit all of the changes that the migration script did to your repo. If you encounter issues, you can back the changes out - and then open an issue to let me know what went wrong for you, so I can fix it.
|
|
39
|
+
|
|
40
|
+
If you see an error about the Ruby version you have installed, you may need to install a newer version of Ruby. Octopress required a version of Ruby older than 3.0, while modern Jekyll dependencies require more recent versions of Ruby. You can install a newer version of Ruby using [rbenv](https://rbenv.org).
|
|
41
|
+
|
|
42
|
+
### Replacing Octopress's Rakefile tasks
|
|
43
|
+
|
|
44
|
+
Octopress included a `Rakefile` with tasks to manage your blog. These are no longer necessary after you upgrade to a newer version of Jekyll, since Jekyll ships a commandline tool which can do all of the same tasks. For more information, see [Jekyll's docs](https://jekyllrb.com/docs/usage/). A quick cheat sheet:
|
|
45
|
+
|
|
46
|
+
- Instead of `rake preview`, use `jekyll serve`
|
|
47
|
+
- Instead of `rake generate`, use `jekyll build`
|
|
48
|
+
|
|
49
|
+
### Deploying after switching to Squidpress
|
|
50
|
+
|
|
51
|
+
While Octopress uses a bespoke `rake deploy`/`rake gen_deploy` task for deployments to GitHub Pages, Squidpress doesn't handle deploying your site for you. I recommend switching to whatever your hosting provider recommends. For GitHub Pages, I recommend checking its [official documentation for Jekyll deployments](https://docs.github.com/en/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll). I also recommend taking a look at [Codeberg Pages](https://codeberg.page/) if you're interested in git-based deploys using a non-GitHub host.
|
|
52
|
+
|
|
53
|
+
### Manual migration steps
|
|
54
|
+
|
|
55
|
+
If you'd like to do the migration yourself, you can read the `Rakefile` and do what it does for you. To summarize:
|
|
56
|
+
|
|
57
|
+
1. Remove all contents from the `source` directory that are also located in `.themes/classic/source`, then remove the `.themes` directory and all its contents.
|
|
58
|
+
2. Remove the `plugins`, `sass`, and `source/_includes` directories.
|
|
59
|
+
3. Remove the `Rakefile`.
|
|
60
|
+
4. Copy the assets listed in the "Installation for new users" section above into your `source` directory.
|
|
61
|
+
5. Remove your `Gemfile` and `Gemfile.lock`, then create a new `Gemfile` with a dependency on `gem "squidpress", "~> 0.1"`.
|
|
62
|
+
6. Remove the `plugins:`, `highlighter:`, `markdown:` and `rdiscount:` sections from your `_config.yml`.
|
|
63
|
+
7. Add the lines `theme: squidpress` and `plugins: ['squidpress-plugins', 'jekyll-paginate']` to your `_config.yml`.
|
|
10
64
|
|
|
11
65
|
## FAQ
|
|
12
66
|
|
|
67
|
+
Q: Why did you do this, anyway?
|
|
68
|
+
|
|
69
|
+
A: I just wanted to.
|
|
70
|
+
|
|
71
|
+
More seriously, it's because my blog has used the Octopress theme ever since I switched to Jekyll and it feels like it's part of the site identity at this point. I didn't want to be stuck on older versions of Jekyll forever, but I wanted the ability to keep using the theme. Because I've heard from other people who felt the same way, I decided to package this up in a way that would be usable by other people.
|
|
72
|
+
|
|
13
73
|
Q: Why did you fork the older version of Octopress instead of Octopress 3.0?
|
|
14
74
|
|
|
15
75
|
A: My blog uses the older version, I imagine like most holdout Octopress users do, and I wanted a clean upgrade path.
|
|
16
76
|
|
|
77
|
+
Q: Why "Squidpress"?
|
|
78
|
+
|
|
79
|
+
A: Octopress was named after the mascot of GitHub, but I didn't want to tie this theme to any particular git hosting platform. The *Splatoon* game series has octopus-inspired characters and squid-inspired characters, so I decided it would make sense for the counterpart for "Octopress" to be "Squidpress"[^inkling].
|
|
80
|
+
|
|
17
81
|
## Contributing
|
|
18
82
|
|
|
19
|
-
|
|
83
|
+
If you encounter any bugs, please [report them here on Codeberg](https://codeberg.org/mistydemeo/squidpress/issues). I'll be happy to look into them. Squidpress is largely feature-complete at this point, but I'm happy to review any [pull requests](https://codeberg.org/mistydemeo/squidpress/pulls) if you do have something you'd like to contribute.
|
|
84
|
+
|
|
85
|
+
Because Squidpress is hosted on Codeberg, which has a policy not to permit LLM-generated content, AI/LLM-generated contributions to this project will not be accepted.
|
|
20
86
|
|
|
21
87
|
|
|
22
88
|
## License
|
|
23
89
|
(The MIT License)
|
|
24
90
|
|
|
25
|
-
Copyright © 2009-2013 Brandon Mathis
|
|
26
|
-
Copyright © 2026 Misty De Méo
|
|
91
|
+
> Copyright © 2009-2013 Brandon Mathis
|
|
92
|
+
> Copyright © 2026 Misty De Méo
|
|
93
|
+
>
|
|
94
|
+
> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the ‘Software’), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
95
|
+
>
|
|
96
|
+
> The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
|
97
|
+
>
|
|
98
|
+
> THE SOFTWARE IS PROVIDED ‘AS IS’, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
27
99
|
|
|
28
|
-
|
|
100
|
+
This project also incorporates portions of the [Compass CSS library](https://github.com/Compass/compass).
|
|
29
101
|
|
|
30
|
-
|
|
102
|
+
> Copyright (c) 2009-2014 Christopher M. Eppstein
|
|
103
|
+
>
|
|
104
|
+
> Permission is hereby granted, free of charge, to any person obtaining
|
|
105
|
+
> a copy of this software and associated documentation files (the
|
|
106
|
+
> "Software"), to deal in the Software without restriction, including
|
|
107
|
+
> without limitation the rights to use, copy, modify, merge, publish,
|
|
108
|
+
> distribute, sublicense, and/or sell copies of the Software, and to
|
|
109
|
+
> permit persons to whom the Software is furnished to do so, subject to
|
|
110
|
+
> the following conditions:
|
|
111
|
+
>
|
|
112
|
+
> The above copyright notice and this permission notice shall be
|
|
113
|
+
> included in all copies or substantial portions of the Software.
|
|
114
|
+
> No attribution is required by products that make use of this software.
|
|
115
|
+
>
|
|
116
|
+
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
117
|
+
> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
118
|
+
> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
119
|
+
> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
120
|
+
> LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
121
|
+
> OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
122
|
+
> WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
123
|
+
>
|
|
124
|
+
> Except as contained in this notice, the name(s) of the above copyright
|
|
125
|
+
> holders shall not be used in advertising or otherwise to promote the sale,
|
|
126
|
+
> use or other dealings in this Software without prior written authorization.
|
|
127
|
+
>
|
|
128
|
+
> Contributors to this project agree to grant all rights to the copyright
|
|
129
|
+
> holder of the primary product. Attribution is maintained in the source
|
|
130
|
+
> control history of the product.
|
|
31
131
|
|
|
32
|
-
|
|
132
|
+
[^inkling]: The right reader will note that the *Splatoon* characters are called "octolings" and "inklings", not "octolings" and "squidlings". The "Inkpress" name is taken many times over, so I decided not to use it in order to avoid any confusion.
|
data/_includes/head.html
CHANGED
|
@@ -7,8 +7,9 @@
|
|
|
7
7
|
<title>{% if page.title %}{% if site.titlecase %}{{ page.title | titlecase }}{% else %}{{ page.title }}{% endif %} - {% endif %}{{ site.title }}</title>
|
|
8
8
|
<meta name="author" content="{{ site.author }}">
|
|
9
9
|
|
|
10
|
-
{% capture
|
|
11
|
-
|
|
10
|
+
{% capture excerpt %}{% if page.excerpt %}{{ page.excerpt }}{% else %}{{ content | raw_content }}{% endif %}{% endcapture %}
|
|
11
|
+
{% capture description %}{{ excerpt | strip_html | lstrip | condense_spaces | truncate:150 }}{% endcapture %}
|
|
12
|
+
<meta name="description" content="{{ description }}">
|
|
12
13
|
{% if page.keywords %}<meta name="keywords" content="{{ page.keywords }}">{% endif %}
|
|
13
14
|
|
|
14
15
|
<!-- http://t.co/dKP3o1e -->
|
|
@@ -16,6 +17,13 @@
|
|
|
16
17
|
<meta name="MobileOptimized" content="320">
|
|
17
18
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
18
19
|
|
|
20
|
+
<meta property="og:title" content="{{ page.title }}"/>
|
|
21
|
+
{% if page.image %}<meta property="og:image" content="{{ page.image | absolute_url }}"/>{% endif %}
|
|
22
|
+
<meta property="og:url" content="{{ site.url }}{{ page.url }}"/>
|
|
23
|
+
{% if page.is_post %}<meta property="og:type" content="article">{% endif %}
|
|
24
|
+
<meta property="og:site_name" content="{{ site.title }}"/>
|
|
25
|
+
<meta property="og:description" content="{{ description }}"/>
|
|
26
|
+
|
|
19
27
|
{% capture canonical %}{{ site.url }}{% if site.permalink contains '.html' %}{{ page.url }}{% else %}{{ page.url | remove:'index.html' }}{% endif %}{% endcapture %}
|
|
20
28
|
<link rel="canonical" href="{{ canonical }}">
|
|
21
29
|
<link href="{{ '/favicon.png' | relative_url }}" rel="icon">
|
data/_includes/post/date.html
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
{% if page.date %}{% capture time %}{{ page.
|
|
2
|
-
{% if post.date %}{% capture time %}{{ post.
|
|
1
|
+
{% if page.date %}{% capture time %}{{ page.date | date_html }}{% endcapture %}{% endif %}
|
|
2
|
+
{% if post.date %}{% capture time %}{{ post.date | date_html }}{% endcapture %}{% endif %}
|
|
3
3
|
|
|
4
|
-
{% if page.updated %}{% capture updated %}{{ page.
|
|
5
|
-
{% if post.updated %}{% capture updated %}{{ post.
|
|
4
|
+
{% if page.updated %}{% capture updated %}{{ page.date | date_updated_html }}{% endcapture %}{% endif %}
|
|
5
|
+
{% if post.updated %}{% capture updated %}{{ post.date | date_updated_html }}{% endcapture %}{% endif %}
|
metadata
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: squidpress
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Misty De Méo
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: jekyll
|
|
@@ -44,15 +43,14 @@ dependencies:
|
|
|
44
43
|
requirements:
|
|
45
44
|
- - "~>"
|
|
46
45
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '0.
|
|
46
|
+
version: '0.2'
|
|
48
47
|
type: :runtime
|
|
49
48
|
prerelease: false
|
|
50
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
50
|
requirements:
|
|
52
51
|
- - "~>"
|
|
53
52
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: '0.
|
|
55
|
-
description:
|
|
53
|
+
version: '0.2'
|
|
56
54
|
email:
|
|
57
55
|
- squidpress@mistydemeo.com
|
|
58
56
|
executables: []
|
|
@@ -189,7 +187,6 @@ homepage: https://codeberg.org/mistydemeo/squidpress
|
|
|
189
187
|
licenses:
|
|
190
188
|
- MIT
|
|
191
189
|
metadata: {}
|
|
192
|
-
post_install_message:
|
|
193
190
|
rdoc_options: []
|
|
194
191
|
require_paths:
|
|
195
192
|
- lib
|
|
@@ -204,8 +201,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
204
201
|
- !ruby/object:Gem::Version
|
|
205
202
|
version: '0'
|
|
206
203
|
requirements: []
|
|
207
|
-
rubygems_version:
|
|
208
|
-
signing_key:
|
|
204
|
+
rubygems_version: 4.0.20
|
|
209
205
|
specification_version: 4
|
|
210
206
|
summary: Port of Octopress's theme to modern Jekyll.
|
|
211
207
|
test_files: []
|