| name | bootstrap-skills | ||||||
|---|---|---|---|---|---|---|---|
| description | Bootstrap and materialize inline SKILL bundles into a persistent, user-visible install root; maintain a version lockfile and only re-unpack when a bundle changes. | ||||||
| metadata |
|
The following is an annotated list of OBIS codes returned by a current SAGEMCOM XT211 Smart Meter installed by Groupe E. The raw values can be seen in the Tasmota console by uncommenting / adding the following line in your gPlug's Script:
; Output data in console - use this to identify the raw data returned from your smart meter
->sensor53 d1BLUF: Here is the reordered table without the Values column, and with concise labels (no redundant OBIS repeats).
| Label | OBIS Code | Unit | Description | Notes/Interpretation |
| # This file is used to configure release-it | |
| # Run `npx release-it` to release a regular release | |
| # Run `npx release-it --preRelease=beta` to start a pre-release | |
| hooks: | |
| # This bump the manifest.json file with the new version before building | |
| 'before:bump': 'npm_package_version=${version} node version-bump.mjs' | |
| 'after:bump': npm run build | |
| npm: false | |
| git: | |
| getLatestTagFromAllRefs: true |
| # Boilerplate semantic-release configuration for an Obsidian plugin | |
| # run semantic-release as follows to release a new version of your plugin: | |
| # dry-run (default): npx -p github:brianrodri/semantic-release-obsidian-plugin semantic-release | |
| # for real: npx -p github:brianrodri/semantic-release-obsidian-plugin semantic-release --dry-run false | |
| # If `package.json` has a `repository` key configured, but you want to work on, say, a fork or development version on your own | |
| # repository / user, you might have to specify the `repositoryUrl`: | |
| # - either as a command-line argument (e.g. -r <url>) or by uncommenting and modifying the following line: | |
| # repositoryUrl: https://github.com/<user>/<repository> | |
| branches: | |
| - main |
| /** | |
| * Cloudflare Worker for Alias Generation and Management | |
| * | |
| * This script enables the generation and management of email aliases using the SimpleLogin API. It is designed to check existing email aliases associated with a specific domain and create new custom aliases when necessary. | |
| * | |
| * Core Functionalities: | |
| * - Queries existing email aliases linked to a given domain, using the SimpleLogin API. | |
| * - Employs pagination to handle retrieval of aliases, allowing up to 20 aliases per page. | |
| * - Utilizes regular expressions to identify domains in both `note` and `latest_activity` fields of aliases. | |
| * - Supports the creation of new custom aliases, with options to specify a hostname and additional attributes like `note` and `name`. |
| {#- Frontmatter Template - also called *Properties* in Obsidian -#} | |
| --- | |
| id: {{ id }} | |
| created: {{ updated }} | |
| {# For fields like title and aliases, remove linebreaks and either add spaces (title, alias) or create multiple list entries (author) #} | |
| title: "{{ title | replace('\n', ' ')}}" | |
| aliases: ["{{ title | replace('\n', ' ') }}"{%- if sanitized_title %}, "{{sanitized_title}}"{%- endif %}] | |
| author: ["{{ author | replace('\n', '", "')}}"] | |
| category: "{{ category }}" | |
| highlights: {{ num_highlights }} |
| plugin.addCommand({ | |
| id: "copy-wikilink-to-clipboard", | |
| name: "Copy WikiLink to Clipboard", | |
| callback: () => { | |
| const noteFile = plugin.app.workspace.getActiveFile(); // Currently Open Note | |
| if (!noteFile.name) return; // Nothing Open | |
| // Copy WikiLink to clipboard, with title if available | |
| let title = ""; | |
| plugin.app.fileManager |
Tailscale recently introduced the possibility to manage Tailnet ACLs in Git Repositories. This is my tailscale.yml which has a notable difference to the one proposed by Tailscale. By putting the ACL test in front of the ACL deployment, it becomes a bit clearer that a failure happened b/c of a failed ACL.
Bonus: by installing act, one can actually run these tests locally, e.g. before committing / pushing to Github. Works well with a Git pre-commit hook that will fail if the ACL test is unsusscessful. Combined with the 1Password cli op command, you can get a nice little ACL workflow.
op run --env-file=".github/act/.env" -- act --secret TS_API_KEY --secret TS_TAILNET
How to bring E-Mail retention policies to Gmail / Google Mail:
- Go to Google Scripts and create a blank project (make sure you are logged into your Google account);
- paste the code (below) (and modify the policies as needed);
- set a trigger (Resources -> Current Project's Triggers -> Add one now) to run it at the preferred interval; and
- create filters in Gmail/Google Mail that set policies when specific messages arrive
Inspired and adapted from Gmail Automation: 5 Useful Google Scripts to Automate Your Gmail
| let country = 'de' // replace with 'at' for shops in Austria | |
| let storeId = 251 | |
| let param = args.widgetParameter | |
| if (param != null && param.length > 0) { | |
| storeId = param | |
| } | |
| const widget = new ListWidget() | |
| const storeInfo = await fetchStoreInformation() | |
| const storeCapacity = await fetchAmountOfPaper() |