Skip to content

Instantly share code, notes, and snippets.

@Foadsf
Foadsf / taskjuggler-lessons-learned.md
Created April 18, 2025 09:32
TaskJuggler 3.8.1 Lessons Learned: Tips, Tricks, and Workarounds A comprehensive guide to using TaskJuggler 3.8.1 with modern Ruby versions, addressing common syntax issues, bugs, and report generation challenges.

TaskJuggler 3.8.1 Lessons Learned

Introduction

TaskJuggler is a powerful project management tool that uses a text-based syntax to define project plans, resources, and tasks. While the software is mature and feature-rich, its latest version (3.8.1 as of 2024) has some quirks and compatibility issues, especially with newer Ruby versions. This document shares practical lessons learned while working with TaskJuggler 3.8.1.

Basic Project Structure

TaskJuggler 3 has a specific file structure and syntax that differs significantly from version 2. Here's the basic structure of a TaskJuggler 3 project file:

using System;
public class HelloWorld
{
public static void Main(string[] args)
{
Console.WriteLine("Hello, MSBuild!");
}
}

Force Delete Files/Folders on Windows with IObit Unlocker and a CMD Batch Script

This Gist shares how to install IObit Unlocker using Chocolatey and use a CMD batch script to force delete stubborn files or folders on Windows, including a verification step. This was tested on a minimal Windows 10 setup (Tiny10) on April 14, 2025.

Step 1: Install IObit Unlocker via Chocolatey

  1. Ensure Chocolatey is installed:
    choco --version
@Foadsf
Foadsf / Install-Winget.ps1
Created April 10, 2025 12:44
Complete script to install Windows Package Manager (winget) on Tiny10/LTSC without Microsoft Store
# Complete Winget Installer for Tiny10/LTSC
# Run as Administrator
# Created on: April 10, 2025
# Ensure we're running with admin rights
if (-not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]"Administrator")) {
Write-Host "This script requires administrative privileges. Please run as Administrator." -ForegroundColor Red
exit 1
}
@Foadsf
Foadsf / HyperV_External_Virtual_Switch.md
Created April 9, 2025 06:18
Fixed Hyper‑V VM connectivity by creating an external virtual switch.

Resolving Internet Connectivity in a Hyper‑V Virtual Machine

Short Description:
Fixed Hyper‑V VM connectivity by creating an external virtual switch.


Overview

I was experiencing a loss of Internet connectivity in a Windows virtual machine running on Hyper‑V. Although the VM received an IP address via the Default Switch, it could not reach the Internet—the gateway (172.29.128.1), external IP addresses (e.g., 8.8.8.8), or HTTPS endpoints were unreachable.

Building Goose for Windows

This guide will help you build and run the Goose AI chat UI on Windows.

Prerequisites

You'll need the following tools installed on your Windows machine:

  1. Rust - Install via one of these methods:
@Foadsf
Foadsf / README.md
Last active February 20, 2025 14:26
Automated script to install Python's hunspell package on Windows by setting up vcpkg and required directory structure.

Hunspell Installer for Python on Windows

This script automatically installs the Python hunspell package on Windows by setting up the necessary environment.

What this script does

  1. Checks for and installs vcpkg if not present
  2. Installs hunspell C++ library using vcpkg
  3. Creates a virtual drive and directory structure expected by the hunspell Python package
  4. Copies required header and library files to the expected locations
@Foadsf
Foadsf / README.md
Last active November 20, 2024 08:54
🔄 Cross-platform PowerShell script for intelligent Git file move detection and history preservation (experimental - use at your own risk)

git-smart-move.ps1

A cross-platform PowerShell script that intelligently detects moved/renamed files in Git repositories and preserves their history using git-filter-repo.

⚠️ WARNING: This script is experimental and has not been thoroughly tested in production environments. Use at your own risk. Make sure to have backups before running it on your repository.

Requirements

  • PowerShell Core (Windows/Linux/macOS)
  • Git
  • git-filter-repo (pip install git-filter-repo)
@Foadsf
Foadsf / git_move_files.bat
Created November 19, 2024 13:35
A Windows batch script that recovers Git history for files moved without git mv by detecting deleted files and their new locations, then properly tracking the moves.
@echo off
setlocal enabledelayedexpansion
if "%1"=="" (
echo Usage: git_move_files.bat [RepositoryPath]
exit /b 1
)
set "repo_path=%1"
cd /d "%repo_path%" || (
@Foadsf
Foadsf / svn_move_files.bat
Created November 13, 2024 12:16
A cmd batch script that helps SVN track files moved outside of version control by temporarily moving them back to their original location and then using 'svn move' to relocate them properly.
@echo off
setlocal enabledelayedexpansion
:: Check if the SVN directory path is provided
if "%1"=="" (
echo Please provide the path to the SVN repository.
echo Usage: %~nx0 path\to\svn\repository
exit /b 1
)
:: Initialize variables
set repo_path=%1