You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
3.1 KiB
Markdown
67 lines
3.1 KiB
Markdown
# pickmy.org Jekyll source
|
|
|
|
This is the main repository for pickmy.org's website. All the posts and custom code Jekyll uses to build the site.
|
|
|
|
The site is automatically built when I push stuff to the repository.
|
|
|
|
The VyprVPN page in /pbx is not generated by Jekyll. This is actually run by a different bash script and not part of this repository.
|
|
|
|
## Modifications To Theme
|
|
|
|
This uses [jekyll-theme-console by b2a3e8](https://github.com/b2a3e8/jekyll-theme-console) with a few modifications:
|
|
|
|
- _sass/base.scss has list bulleting code removed
|
|
- _sass/base.scss has had formatting changes (wider display, bigger text, more header sizes!)
|
|
- assets/list.scss now contains the list bullet code
|
|
- _includes/head.html modified to search for "list: bullet" in front matter
|
|
- _includes/header.html modified to look for page titled "/git" to display non-relative URL.
|
|
- _layouts: page and post html file have had title added using h1 tag
|
|
- _layouts: default.html has *pickmy.org added to img-src CSP since img.pickmy.org hosts images
|
|
|
|
All other changes are made in the markdown. I broke CSS and most of my changes aren't working. Must fix sometime.
|
|
|
|
## Organization Of Site
|
|
|
|
The concept of posts and pages the way they were with Wordpress are out the window. All posts are posts. All pages are posts.
|
|
|
|
I'm taking advantage of the fact I can make a folder, put a _posts folder under it, and Jekyll automatically categorizes those posts. This means there are three main types/categories of posts/pages:
|
|
|
|
- /blog: all general blogging type posts
|
|
- /pbx: all Asterisk related stuff
|
|
- /dev: all development based stuff
|
|
|
|
Post images or external resources ***ARE NOT*** stored in this repository. You think I'm crazy?
|
|
|
|
## Use of PHP
|
|
|
|
Despite being a static site generator; pickmy.org has usually had some form of random text line on it's pages since it's inception. To this effect I have specified permalinks on everything using a new format so Jekyll outputs .php files.
|
|
|
|
taglines.txt and tails.txt is not the same one used on the site. That one is stored externally and symlinked when the site is built.
|
|
|
|
## Vypr Blacklist
|
|
|
|
Currently (as of 10-SEP-2022), I am providing a list of IP's from VyprVPN that are attcking SIP servers. This is *NOT* generated by Jekyll directly. It exists as chunks of files that are catted together with iptables output in the middle. This automatically updates every 4 hours via CRON and the githook reincludes this file every time the site is rebuilt.
|
|
|
|
## compose.sh
|
|
|
|
Compose.sh is a bash script becuase I'm lazy. It creates a file populated with front matter:
|
|
|
|
```
|
|
---
|
|
title:
|
|
date:
|
|
permalink:
|
|
exceprt_seperator:
|
|
---
|
|
```
|
|
|
|
Post categories are determined by sub-folders automatically; in fact no posts exist in the default _posts folder for that reason. It also copies the file to the right spot based on what you tell it.
|
|
|
|
```
|
|
user@host:~/blogsite$ ./compose.sh blog Post Title Here
|
|
```
|
|
|
|
It's the blog category followed by the title. You don't have to enclose the title, the script automatically assumes every word after the first is the title.
|
|
|
|
Permalink is set to output .php extensions under /category/year/MON/day-title.php - modify how you need.
|