Skip to main content

Seckerwiki Scripts

This package is a CLI that helps me manage my markdown-based Foam workspace, or my "Personal Wiki". I store everything in my wiki, from journal entries to uni notes.

Installation

Version 1.x had requirements for extra dependencies to get the lecture-to-markdown converter working properly. Since I no longer go to uni, I don't need those scripts anymore, so the installation is as simple as:

pip3 install seckerwiki

Once installed, run this command to generate the config files:

wiki setup

Commands

Setup

This command does a couple of things:

  • Creates a config.yml file in ~/.config/seckerwiki, which is used to configure some things in the repo.
  • Creates a credentials file in ~/.config/seckerwiki/, which stores secrets.

Edit the credentials file to add a secret passsword used for decrypting your Journal (see below).

log

Alias for git log, with some pretty graph options.

status

Runs git status. Basically just a convenience function, so you don't have to cd into a wiki dir.

commit

does a git commit, generating a commit message. If there are a number of staged files, the commit header shows the top level folders instead.

Args:

  • -y: skip verification and commit
  • -a: also do git add --all

sync

perform a git pull (rebase) then git push

journal

I use my wiki to store encrypted journal entries.

Run wiki journal to generate a new empty journal entry in the journal folder specified in the settings. wiki journal --encrypt replaces all the .md files with .md.asc files, encrypting the files with a symmetric key specified in the settings. wiki journal --decrypt [filename] decrypts a file in the encrypted journal directory and prints it to stdout.

toc

Generates a table of contents for other files/subfolders the markdown file is.

Add the following tags to the "contents/readme" page in each subfolder:

<!--BEGIN_TOC-->
<!--END_TOC-->

The script will replace the content between these two tags with the contents. For example:

<!--BEGIN_TOC-->
Pages:
- [hardware](./hardware.md)
- [iot-development](./iot-development.md)
- [iot-platforms](./iot-platforms.md)
- [platformio-esp32-notes](./platformio-esp32-notes.md)
- [rtoses](./rtoses.md)

<!--END_TOC-->

This is used primarily so Foam can build a graph that collects pages within a folder together by a node.

stats

Prints some cool stats about the wiki:

  • commits made - number of git commits since repo was created
  • Number of notes - number of markdown files in repo
  • total lines - non-empty lines in .md files
  • largest files - paths to the top 3 longest .md files

Developing

I use poetry for building/publishing the package. Read their docs.

Release files for seckerwiki 2.0.12

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for seckerwiki 2.0.12
File Size Uploaded
seckerwiki-2.0.12.tar.gz 12.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for seckerwiki 2.0.12
File Interpreter ABI Platform
seckerwiki-2.0.12-py3-none-any.whl Python 3 none any Details

Total release size: 28.0 kB

Release files / seckerwiki-2.0.12.tar.gz

Download URL seckerwiki-2.0.12.tar.gz
Size 12.9 kB
Tags Source
SHA-256 checksum
How to use checksums
078259fbe1d958296702c9a2fe0aeab55a7f9746dfaa72f7a4aae2a5523e60ab
BLAKE2b-256 checksum
How to use checksums
addcab57c1ed2e16285eff9d757018d46cad5e188e44c0e8703ba612f56dc275
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.12 CPython/3.8.10 Linux/5.4.0-91-generic

Release files / seckerwiki-2.0.12-py3-none-any.whl

Download URL seckerwiki-2.0.12-py3-none-any.whl
Size 15.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
13cc12c043f4dc16079dadada4d8be2450cf7a813e52ce3b0ebeab209cefd7bb
BLAKE2b-256 checksum
How to use checksums
94b8dc12f8cb186795987f97e6c7adcc89d52920428483547d56ef8a09e6fe3a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.12 CPython/3.8.10 Linux/5.4.0-91-generic

Release history Release notifications | RSS feed

This release

2.0.12 This release

2 release files

2.0.11

2 release files

2.0.10

2 release files

2.0.9

2 release files

2.0.8

2 release files

2.0.7

2 release files

2.0.6

2 release files

2.0.5

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

1 release file

1.1.1

1 release file

1.1

1 release file

1.0

1 release file

0.1.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page