f05865972be297987aa2a3f4410496562131fd93
- Replace hardcoded opencode update step with dynamic discovery of all version-pinned flake inputs via nix flake metadata --json - Add --use-update-script flag to nix-update command so packages with custom passthru.updateScript (like n8n) use their custom scripts - Update output variables from update-opencode to update-flake-inputs - Update Summary step to reflect new generic flake input handling
m3ta-nixpkgs
Personal Nix flake repository: custom packages, overlays, NixOS modules, and Home Manager modules.
Features
- 🎁 Custom Packages: Collection of personal Nix packages
- 🔄 Overlays: Package modifications and enhancements
- 🐚 Development Shells: Pre-configured environments (Python, DevOps)
- ⚙️ NixOS Modules: System-level configuration modules
- 🏠 Home Manager Modules: User-level configuration modules
- 📚 Library Functions: Helper utilities for configuration management
- ❄️ Flakes Only: Modern Nix flakes support (no channels)
Quick Links
- 📖 Full Documentation
- 🚀 Quick Start Guide
- 📚 Architecture
- 🤝 Contributing
- 📦 Packages
- ⚙️ Modules
- 📖 Guides
Quick Start
# Add to your flake
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
m3ta-nixpkgs.url = "git+https://code.m3ta.dev/m3tam3re/nixpkgs";
# Build a package
nix build git+https://code.m3ta.dev/m3tam3re/nixpkgs#code2prompt
# Run a package
nix run git+https://code.m3ta.dev/m3tam3re/nixpkgs#zellij-ps
Available Packages
| Package | Description |
|---|---|
beads |
Lightweight memory system for AI coding agents with graph-based issue tracking |
code2prompt |
Convert code to prompts |
hyprpaper-random |
Random wallpaper setter for Hyprpaper |
launch-webapp |
Launch web applications |
mem0 |
AI memory assistant with vector storage |
msty-studio |
Msty Studio application |
n8n |
Free and source-available fair-code licensed workflow automation tool |
notesmd-cli |
Obsidian CLI (Community) - Interact with Obsidian in the terminal |
opencode |
AI coding agent built for the terminal |
opencode-desktop |
OpenCode Desktop App with Wayland support (includes workaround for upstream issue #11755) |
openspec |
Spec-driven development (SDD) for AI coding assistants |
pomodoro-timer |
Pomodoro timer utility |
rofi-project-opener |
Rofi-based project launcher |
sidecar |
Companion tool for CLI agents with diffs, file trees, and task management |
stt-ptt |
Push to Talk Speech to Text |
td |
Minimalist CLI for tracking tasks across AI coding sessions |
tuxedo-backlight |
Backlight control for Tuxedo laptops |
zellij-ps |
Project switcher for Zellij |
Automated Package Updates
This repository uses Gitea Actions to automatically update packages using nix-update:
Workflow: .gitea/workflows/nix-update.yml
Schedule: Runs weekly on Sundays, and can be triggered manually.
What it does:
- Checks all packages in
pkgs/for updates - Updates versions and hashes using
nix-update --flake --commit - Creates a new branch with updates
- Opens a pull request automatically
Manual Trigger: Go to Actions → Update Nix Packages with nix-update → Run workflow in Gitea UI, then optionally specify a specific package to update.
Setup Required:
- Create a Personal Access Token in Gitea (Settings → Applications → Generate Token)
- Token scopes needed:
user,repo,write:issue - Add token as secret: Settings → Secrets → New →
NIX_UPDATE_TOKEN
For detailed usage, module documentation, package references, and contribution guidelines, see the full documentation.
License
Individual packages may have their own licenses. Check each package's meta.license attribute.
Maintainer
Description
Languages
Nix
90%
Python
9.8%
Shell
0.2%