Skip to content

Instantly share code, notes, and snippets.

View baronfel's full-sized avatar

Chet Husk baronfel

View GitHub Profile
@baronfel
baronfel / study.js
Last active April 6, 2024 17:45
Pf2e Study action replacement
// built off of the data put in place by the magaambya-study-helper module
function getFlags(actor) {
return actor.getFlag('magaambya-study-helper', 'branch-data');
}
function updateFlags(actor, data) {
actor.setFlag('magaambya-study-helper', 'branch-data', data);
}
function slugify(str) {
return game.pf2e.system.sluggify(str);
@baronfel
baronfel / spec.md
Last active March 27, 2024 18:53
.NET SDK Compound Templates

Core Idea

Allow templates to easily orchestrate the invocation of other templates by name/id, making multi-project and multi-item templates easier to keep up to date, and factoring out subsets of currently-giant templates into maintainable chunks.

Motivating Examples

  • A JS API with a corresponding .NET Backend
  • A Library project, a console project, and a test project
@baronfel
baronfel / terminal-logger-progress.md
Last active March 28, 2024 15:57
Speclet for terminallogger progress

Progress speclet

  • allows to specify the progress of the task
  • allows describing the overall operation
  • allows describing the 'instant' state
  • allows determinate status (x/y)
  • allows indeterminate status

Example API usage:

@baronfel
baronfel / gist:12386b8961b0324b1ee8697d10554eee
Created September 20, 2023 15:32
.NET CLI command for cross-platform AOT
# the nuget.config is needed to get nightly feeds, since the 'nightly' container is also using rc2 builds of sdk/runtime ahead of release
# the docker socket and docker binary are needed to light up the SDK tooling
# the nightly base image is needed because the -aot SDK images are only present there
# the explicit ContainerBaseImage is because SDK base image inference doesn't know about the 'nightly' feeds pattern
docker run --rm -it \
-v $(pwd):/source \
-v $(pwd)/../../nuget.config:/source/nuget.config \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /usr/bin/docker:/usr/bin/docker \
-w /source \
@baronfel
baronfel / CliFlag.fs
Last active September 18, 2023 17:42
System.CommandLine Flag variant
module CliFlag
open System
open System.CommandLine
open System.CommandLine.Parsing
type CliFlag<'t> =
inherit CliOption<'t>
val private enabledFlagName: string
val private disabledFlagName: string
@baronfel
baronfel / pinkcatme.json
Created July 27, 2023 22:11
Windows Terminal version of the pinkcatme theme for KDE
{
"background": "#FFEAF1",
"black": "#666666",
"blue": "#B39FD6",
"brightBlack": "#000000",
"brightBlue": "#8966D6",
"brightCyan": "#3CB4EB",
"brightGreen": "#85D468",
"brightPurple": "#DF81CB",
"brightRed": "#F02070",
using System.CommandLine;
using System.CommandLine.Builder;
using System.CommandLine.Parsing;
namespace scl
{
public static class Usage
{
public struct CmdArgs
@baronfel
baronfel / RidItems.targets
Created June 24, 2023 18:25
An MSBuild target that adds RID-matching subvariants of source files to the compilation
<Project>
<!-- This is a very simple version of what we'd actually want. We actually would need to:
* get the target RID
* get the OS portion of the RID graph _only_, no versions, no architectures
* walk that graph in most-specific to least-specific order, including the first (most specific) items that match the expected pattern along the way
NOTE: .NET SDK Default Glob Include patterns wreck this entire feature -->
<Target Name="ExpandRIDCompileItems" DependsOnTargets="AddImplicitDefineConstants" BeforeTargets="CoreCompile">
<PropertyGroup>
<RidDefines Condition="'$(RuntimeIdentifier)' != ''">$(RuntimeIdentifier.Split('-')[0])</RidDefines>
@baronfel
baronfel / registry.http
Created June 19, 2023 17:38
HTTP snippet for docker manifest investigations
@registry = registry-1.docker.io
@authEndpoint = auth.docker.io
@authService = registry.docker.io
@repo = library/ubuntu
@tag = jammy
# @name authenticate
GET https://{{authEndpoint}}/token?service={{authService}}&scope=repository:{{repo}}:pull
###
@baronfel
baronfel / cinnamon
Last active August 21, 2023 00:32
Pork Tenderloins
2T soy sauce
2T Hoison sauce
2T Dry sherry
1T light brown sugar
1T peanut oil
1 1/2 tsp honey
1/2 tsp garlic salt
1/2 tsp ground cinnamon
1 lb pork tenderloin