ts-pantry 0.11.19 → 0.11.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +0,0 @@
1
- import{execSync as $}from"node:child_process";import Z from"node:fs";import x from"node:os";import F from"node:path";var Y=process.env.PANTRY_REGISTRY_URL||"https://registry.pantry.dev",D={"Logi Options+":"logitech.com/options-plus",logioptionsplus:"logitech.com/options-plus","Logi Options Plus":"logitech.com/options-plus",logioptionsplus_installer:"logitech.com/options-plus"},y=new Set(["Safari","Numbers","Pages","Keynote","GarageBand","iMovie","Color Picker","Simulator","Simulator (Watch)","Preview","TextEdit","Automator","Font Book","Migration Assistant","Photo Booth","System Preferences","System Settings","Disk Utility","Terminal","Activity Monitor","Console","Grapher","Script Editor","Time Machine","Photos","Mail","Calendar","Contacts","Reminders","Notes","Maps","Messages","FaceTime","Books","News","Stocks","Weather","Home","Podcasts","Music","TV","Voice Memos","Freeform","Shortcuts","Chess","Dictionary","Stickies","Image Capture","Xcode"]),N=new Set(["Xcode","Numbers","Pages","Keynote","GarageBand","iMovie","Things3","Grammarly for Safari","AdBlock","HP Smart","Audible","Mini Motorways","Snake.io+","WhatsApp Messenger","Honey","Wappalyzer"]);function A(H,J){if(!H||!J||H===J)return!1;if(J==="?")return!!H;let L=(B)=>B.replace(/[,+].*/g,"").replace(/-.*$/,"").split(".").map((K)=>Number.parseInt(K,10)||0),j=L(H),q=L(J);for(let B=0;B<Math.max(j.length,q.length);B++){let K=j[B]||0,Q=q[B]||0;if(K>Q)return!0;if(K<Q)return!1}return!1}function T(H){return H.toLowerCase().replace(/[^a-z0-9]/g,"")}function S(H="/Applications"){if(process.platform!=="darwin")return[];let J=[];if(!Z.existsSync(H))return J;let L=Z.readdirSync(H).filter((j)=>j.endsWith(".app"));for(let j of L){let q=j.replace(/\.app$/,""),B=`${H}/${j}`,K="?",Q;try{let W=`${B}/Contents/Info.plist`;if(Z.existsSync(W)){let X=$(`/usr/libexec/PlistBuddy -c "Print :CFBundleShortVersionString" "${W}" 2>/dev/null`,{timeout:5000,encoding:"utf-8"}).trim();if(X)K=X;try{Q=$(`/usr/libexec/PlistBuddy -c "Print :CFBundleIdentifier" "${W}" 2>/dev/null`,{timeout:5000,encoding:"utf-8"}).trim()||void 0}catch{}}}catch{}J.push({name:q,version:K,path:B,bundleId:Q})}return J}async function P(){try{let H=await fetch(`${Y}/desktop-apps`);if(!H.ok)return[];let J=await H.json();return(J.apps??J??[]).filter((j)=>j&&j.domain).map((j)=>({domain:j.domain,label:j.label??j.name??j.domain,version:j.version??null,platforms:j.platforms}))}catch{return[]}}function R(H,J){let L=D[H];if(L){let q=J.find((B)=>B.domain===L);if(q)return q}let j=T(H);return J.find((q)=>T(q.label)===j||T(q.domain.replace(/\.(com|app|io|net|dev|org|ai|so|rest|fr)$/,""))===j)??null}async function u(H){let J=H||S(),L=await P(),j=[];for(let q of J){let B="unknown",K=null,Q=!1,W=null;if(y.has(q.name))B="system";else{let X=R(q.name,L);if(X)B="pantry",W=X.domain,K=X.version,Q=!!K&&A(K,q.version);else if(N.has(q.name))B="mas"}j.push({name:q.name,currentVersion:q.version,latestVersion:K,updateAvailable:Q,source:B,domain:W})}return j.sort((q,B)=>{if(q.updateAvailable&&!B.updateAvailable)return-1;if(!q.updateAvailable&&B.updateAvailable)return 1;return q.name.localeCompare(B.name)}),j}async function m(H){if(process.platform!=="darwin")return{success:!1,error:"Desktop app updates are macOS-only"};try{let J=await P(),L=R(H,J);if(!L)return{success:!1,error:`"${H}" is not a pantry-published desktop app`};let j=L.domain,q=await fetch(`${Y}/binaries/${encodeURI(j)}/metadata.json`);if(!q.ok)return{success:!1,error:`no registry metadata for ${j}`};let B=await q.json(),K=B.latestVersion,Q=x.arch()==="arm64"?"darwin-arm64":"darwin-x86-64",W=B.versions?.[K]?.platforms??{},X=W[Q]??W["darwin-arm64"]??W["darwin-x86-64"];if(!X?.tarball)return{success:!1,error:`no ${Q} build published for ${j}@${K}`};let k=`${Y}/${String(X.tarball).replace(/^\/?/,"")}`,z=Z.mkdtempSync(F.join(x.tmpdir(),"pantry-app-"));try{let w=F.join(z,"pkg.tar.gz"),C=await fetch(k);if(!C.ok)return{success:!1,error:`failed to download ${k} (${C.status})`};Z.writeFileSync(w,Buffer.from(await C.arrayBuffer()));let U=F.join(z,"x");Z.mkdirSync(U,{recursive:!0}),$(`tar -xzf "${w}" -C "${U}"`,{timeout:120000});let _=(V,E)=>{for(let O of Z.readdirSync(V,{withFileTypes:!0})){if(!O.isDirectory())continue;let g=F.join(V,O.name);if(O.name.endsWith(".app"))return g;if(E>0){let I=_(g,E-1);if(I)return I}}return null},G=_(U,3);if(!G)return{success:!1,error:`tarball for ${j} contained no .app bundle`};let M=`/Applications/${F.basename(G)}`;return $(`rm -rf "${M}"`,{timeout:30000}),$(`ditto "${G}" "${M}"`,{timeout:120000}),$(`xattr -dr com.apple.quarantine "${M}" 2>/dev/null || true`,{timeout:30000}),{success:!0,version:K}}finally{try{Z.rmSync(z,{recursive:!0,force:!0})}catch{}}}catch(J){return{success:!1,error:(J?.message||"Update failed").toString().trim().split(`
2
- `).pop()}}}
3
- export{y as eb,N as fb,A as gb,S as hb,P as ib,u as jb,m as kb};
@@ -1 +0,0 @@
1
- import{execSync as C}from"node:child_process";var y=new Set,L=!1;function H(){if(L)return;L=!0;let s=()=>{for(let o of y)try{C(`pantry stop ${o}`,{stdio:"ignore",timeout:1e4})}catch{}y.clear()};process.on("exit",s),process.on("SIGINT",()=>{s(),process.exit(130)}),process.on("SIGTERM",()=>{s(),process.exit(143)})}function l(s,o=!1){let t={encoding:"utf-8",timeout:30000,stdio:o?"pipe":["pipe","pipe","pipe"]};return C(`pantry ${s}`,t)}function J(s){let o=s.match(/Name:\s+(\S+)/)?.[1]??"",t=/Status:\s+running/i.test(s),n=s.match(/Port:\s+(\d+)/),r=s.match(/PID:\s+(\d+)/),$=s.match(/Data Dir:\s+(.+)/);return{name:o,running:t,port:n?Number.parseInt(n[1],10):null,pid:r?Number.parseInt(r[1],10):null,dataDir:$?$[1].trim():null}}class e{config;_startedByUs=!1;constructor(s){this.config={name:s.name,port:s.port??0,readyTimeoutMs:s.readyTimeoutMs??15000,pollIntervalMs:s.pollIntervalMs??200,quiet:s.quiet??!0}}static isAvailable(){try{return C("pantry --version",{stdio:"ignore",timeout:5000}),!0}catch{return!1}}status(){try{let s=l(`inspect ${this.config.name}`,!0);return J(s)}catch{return{name:this.config.name,running:!1,port:null,pid:null,dataDir:null}}}isRunning(){return this.status().running}getPort(){return this.status().port}async start(){if(H(),this.isRunning())return this.status();return l(`start ${this.config.name}`,this.config.quiet),this._startedByUs=!0,y.add(this.config.name),await this.waitReady(),this.status()}async stop(){if(!this._startedByUs)return;try{l(`stop ${this.config.name}`,this.config.quiet)}catch{}y.delete(this.config.name),this._startedByUs=!1}async forceStop(){try{l(`stop ${this.config.name}`,this.config.quiet)}catch{}y.delete(this.config.name),this._startedByUs=!1}async ensureRunning(){if(this.isRunning())return this.status();return this.start()}async waitReady(){let s=Date.now()+this.config.readyTimeoutMs;while(Date.now()<s){if(this.isRunning())return;await new Promise((o)=>setTimeout(o,this.config.pollIntervalMs))}throw Error(`Service '${this.config.name}' did not become ready within ${this.config.readyTimeoutMs}ms`)}}var u=new e({name:"postgres"});async function R(s){let o=await u.ensureRunning();return{port:s?.port??o.port??5432,host:s?.host??"localhost",database:s?.database??"postgres",username:s?.username??process.env.USER??"postgres"}}async function q(){await u.stop()}function K(s){let o=null;return{get connection(){if(!o)throw Error("Postgres not started. Ensure beforeAll has run.");return o},beforeAll:async()=>{o=await R(s)},afterAll:async()=>{await q(),o=null}}}async function N(s,o){let t=await R(o);try{return await s(t)}finally{if(o?.stopAfter!==!1)await q()}}var x=new e({name:"redis"});async function m(s){let o=await x.ensureRunning(),t=s?.port??o.port??6379,n=s?.host??"localhost";return{port:t,host:n,url:`redis://${n}:${t}`}}async function M(){await x.stop()}function O(s){let o=null;return{get connection(){if(!o)throw Error("Redis not started. Ensure beforeAll has run.");return o},beforeAll:async()=>{o=await m(s)},afterAll:async()=>{await M(),o=null}}}async function U(s,o){let t=await m(o);try{return await s(t)}finally{if(o?.stopAfter!==!1)await M()}}var z=new e({name:"mysql"});async function i(s){let o=await z.ensureRunning();return{port:s?.port??o.port??3306,host:s?.host??"localhost",database:s?.database??"test",username:s?.username??"root"}}async function A(){await z.stop()}function V(s){let o=null;return{get connection(){if(!o)throw Error("MySQL not started. Ensure beforeAll has run.");return o},beforeAll:async()=>{o=await i(s)},afterAll:async()=>{await A(),o=null}}}async function X(s,o){let t=await i(o);try{return await s(t)}finally{if(o?.stopAfter!==!1)await A()}}import{existsSync as T,mkdirSync as F,mkdtempSync as Y,rmSync as G,writeFileSync as Z}from"node:fs";import{tmpdir as a}from"node:os";import{join as b}from"node:path";var w=new Set,B=!1;function I(){if(B)return;B=!0;let s=()=>{for(let o of w)try{if(T(o))G(o,{recursive:!0,force:!0})}catch{}w.clear()};process.on("exit",s),process.on("SIGINT",()=>{s(),process.exit(130)}),process.on("SIGTERM",()=>{s(),process.exit(143)})}function P(s="pantry-test-"){I();let o=Y(b(a(),s));return w.add(o),o}function Q(s){w.delete(s);try{if(T(s))G(s,{recursive:!0,force:!0})}catch{}}async function W(s,o){let t=P(s);try{return await o(t)}finally{Q(t)}}function _(s,o){let t=P(s);try{return o(t)}finally{Q(t)}}function h(s,o,t){let n=b(s,o),r=n.substring(0,n.lastIndexOf("/"));if(r&&!T(r))F(r,{recursive:!0});return Z(n,t),n}function p(s,o){let t=b(s,o);return F(t,{recursive:!0}),t}export{e as lb,R as mb,q as nb,K as ob,N as pb,m as qb,M as rb,O as sb,U as tb,i as ub,A as vb,V as wb,X as xb,P as yb,Q as zb,W as Ab,_ as Bb,h as Cb,p as Db};
@@ -1,2 +0,0 @@
1
- import{createRequire as m}from"node:module";var{defineProperty:e,getOwnPropertyNames:g,getOwnPropertyDescriptor:h}=Object,i=Object.prototype.hasOwnProperty;function j(a){return this[a]}var n=(a)=>{var b=(f??=new WeakMap).get(a),c;if(b)return b;if(b=e({},"__esModule",{value:!0}),a&&typeof a==="object"||typeof a==="function"){for(var d of g(a))if(!i.call(b,d))e(b,d,{get:j.bind(a,d),enumerable:!(c=h(a,d))||c.enumerable})}return f.set(a,b),b},f;var k=(a)=>a;function l(a,b){this[a]=k.bind(null,b)}var o=(a,b)=>{for(var c in b)e(a,c,{get:b[c],enumerable:!0,configurable:!0,set:l.bind(b,c)})};var p=(a,b)=>()=>(a&&(b=a(a=0)),b);var r=m(import.meta.url);
2
- export{n as Hc,o as Ic,p as Jc,r as Kc};
@@ -1 +0,0 @@
1
- import{bb as a,cb as b,db as c}from"./chunk-mm22ceze.js";import"./chunk-mq7cybgp.js";import"./chunk-7dxexqk4.js";export{b as generateZigDefinitions,c as generateZigAliases,a as compareVersions};
@@ -1,2 +0,0 @@
1
- import{Jc as o}from"./chunk-7dxexqk4.js";var i;var e=o(()=>{i={"1password":"1password.com","1Password":"1password.com","1Password CLI":"developer.1password.com/1password-cli","aac-enc":"sourceforge.net/opencore-amr",abseil:"abseil.io",ack:"beyondgrep.com",acl:"savannah.nongnu.org/acl",acmedns:"github.com/caddy-dns/acmedns",acorn:"acorn.io/acorn-cli",act:"github.com/nektos/act",adr:"github.com/npryce/adr-tools","adwaita-icon-theme":"gnome.org/adwaita-icon-theme",age:"filippo.io/age","age-plugin-yubikey":"github.com/str4d/age-plugin-yubikey",agg:"asciinema.org/agg",aiac:"github.com/gofireflyio/aiac",aichat:"crates.io/aichat",air:"github.com/cosmtrek/air",alacritty:"alacritty.org",albionrpg:"crates.io/albion_terminal_rpg",alembic:"alembic.sqlalchemy.org",allure:"github.com/allure-framework/allure2","alpaca.cpp":"github.com/antimatter15/alpaca.cpp","alt-tab":"alttab.app",alttab:"alttab.app",AltTab:"alttab.app",amber:"amber-lang.com",amp:"amp.rs",ansible:"ansible.com","ansible-lint":"ansible.com/ansible-lint",aom:"aomedia.googlesource.com/aom",apko:"github.com/chainguard-dev/apko",apktool:"apktool.org",appium:"appium.io",applesimutils:"wix.com/applesimutils",applewm:"x.org/applewm",appstreamcli:"freedesktop.org/appstream",apptainer:"apptainer.org",apr:"apache.org/apr",arc:"arc.net",Arc:"arc.net","arduino-cli":"arduino.github.io/arduino-cli",argbash:"argbash.dev",argc:"crates.io/argc",argcomplete:"kislyuk.github.io/argcomplete","argo-cd":"argoproj.github.io/cd","argo-workflows":"argoproj.github.io/workflows",argon2:"github.com/P-H-C/phc-winner-argon2",aria2c:"aria2.github.io",aribb24:"code.videolan.org/aribb24",Arkade:"arkade.dev","arpack-ng":"github.com/opencollab/arpack-ng",arrow:"apache.org/arrow",asciidoc:"github.com/asciidoc-py/asciidoc-py",asciidoctor:"asciidoctor.org",asciinema:"asciinema.org",aserver:"alsa-project.org/alsa-lib",asn1:"gnu.org/libtasn1",aspell:"aspell.net",assimp:"assimp.org","ast-grep.github":"ast-grep.github.io","at-spi2-atk":"freedesktop.org/at-spi2-atk",atk:"gnome.org/atk",atlantis:"runatlantis.io",atlas:"atlasgo.io",attr:"savannah.nongnu.org/attr",attrs:"attrs.org",augeas:"augeas.net","Auto-GPT":"agpt.co",autoconf:"gnu.org/autoconf","autoconf-archive":"gnu.org/autoconf-archive",automake:"gnu.org/automake",autossh:"harding.motd.ca/autossh",aux4:"aux4.io",avif:"github.com/AOMediaCodec/libavif",avro:"apache.org/avro",aws:"aws.amazon.com/cli","aws-iam-authenticator":"github.com/kubernetes-sigs/aws-iam-authenticator","aws-sdk-cpp":"github.com/aws/aws-sdk-cpp","aws-sso":"github.com/synfinatic/aws-sso-cli","aws-vault":"github.com/99designs/aws-vault","aws-whoami":"github.com/benkehoe/aws-whoami-golang","aws/cdk":"aws.amazon.com/cdk","aws/cli":"aws.amazon.com/cli",awslocal:"localstack.cloud/awscli-local",awslogs:"github.com/jorgebastida/awslogs",azcopy:"microsoft.com/azure-storage-azcopy",babashka:"babashka.org",bacon:"dystroy.org/bacon",bake:"crates.io/bake-rs",bartib:"crates.io/bartib",bash:"gnu.org/bash","bash-completion":"debian.org/bash-completion",bashly:"bashly.dannyb.co",bat:"crates.io/bat",bats:"github.com/bats-core/bats-core",bazel:"github.com/bazelbuild/bazelisk",bcrypt:"bcrypt.sourceforge.net","berkeley-db":"oracle.com/berkeley-db","better-commits":"github.com/Everduin94/better-commits",bind9:"isc.org/bind9",bindgen:"rust-lang.org/rust-bindgen",binutils:"gnu.org/binutils",biome:"biomejs.dev",bison:"gnu.org/bison",bitcoin:"bitcoin.org",Bittensor:"bittensor.com",black:"github.com/psf/black",blender:"blender.org",Blender:"blender.org",blink:"github.com/jart/blink",blowfish:"github.com/matoszz/blowfish",blueutil:"github.com/toy/blueutil",boost:"boost.org",bore:"bore.pub",borg:"borgbackup.org",bpb:"crates.io/bpb",brave:"brave.com","Brave Browser":"brave.com",brewkit:"pkgx.sh/brewkit",broot:"crates.io/broot",brotli:"github.com/google/brotli","browser-use":"browser-use.com",bruce:"github.com/brucedom/bruce",bruno:"bruno.app",Bruno:"bruno.app",btm:"crates.io/bottom",btop:"github.com/aristocratos/btop","btrfs-progs":"github.com/kdave/btrfs-progs",buf:"buf.build",buildifier:"github.com/bazelbuild/buildtools",buildkit:"github.com/moby/buildkit",buildx:"docker.com/buildx",bun:"bun.sh","bun.com":"bun.sh",bytebase:"bytebase.com",bzip2:"sourceware.org/bzip2","c-ares":"c-ares.org","ca-certs":"curl.se/ca-certs",cabal:"haskell.org/cabal",caddy:"caddyserver.com",caesiumclt:"saerasoft.com/caesium","cairo-trace":"cairographics.org","canonical/pebble":"github.com/canonical/pebble",capnproto:"capnproto.org",carapace:"carapace.sh",cargo:"rust-lang.org/cargo","cargo-binstall":"crates.io/cargo-binstall","cargo-c":"github.com/lu-zero/cargo-c","cargo-tarpaulin":"crates.io/cargo-tarpaulin",cargox:"pkgx.sh/cargox",carthage:"github.com/Carthage/Carthage","Cascadia Code":"cascadia-code",casdoor:"casdoor.org",cask:"cask.readthedocs.io",cassandra:"cassandra.apache.org",cavif:"crates.io/cavif",cbindgen:"mozilla.org/cbindgen",ccache:"ccache.dev",cdk:"aws.amazon.com/cdk",cedar:"cedarpolicy.com/cli","cedar-agent":"permit.io/cedar-agent","cemetery-escape":"github.com/tom-on-the-internet/cemetery-escape",cephadm:"ceph.com/cephadm","ceres-solver":"ceres-solver.org",certbot:"certbot.eff.org",cffi:"github.com/python-cffi/cffi",cfitsio:"heasarc.gsfc.nasa.gov/cfitsio","cfn-lint":"github.com/aws-cloudformation/cfn-lint",cfssl:"cfssl.org",cgal:"cgal.org",cgif:"github.com/dloebl/cgif",changie:"changie.dev",charmcraft:"github.com/canonical/charmcraft",chatblade:"github.com/npiv/chatblade",check_if_email_exists:"reacher.email/check-if-email-exists-cli",checkexec:"crates.io/checkexec",checkmake:"github.com/mrtazz/checkmake",checkov:"checkov.io",chezmoi:"chezmoi.io",chomp:"chompbuild.com",chromedriver:"chromedriver.chromium.org","chruby-exec":"github.com/postmodern/chruby",cicada:"hugo.wang/cicada",cilium:"cilium.io/cilium",circleci:"circleci.com",cirrus:"github.com/cirruslabs/cirrus-cli",cJSON:"github.com/DaveGamble/cJSON","clang-format":"llvm.org/clang-format","classic.yarnpkg":"classic.yarnpkg.com","claude-code":"anthropic.com/claude-code",cleanshot:"cleanshot.com","CleanShot X":"cleanshot.com",click:"crates.io/click",CLIProxyAPI:"github.com/router-for-me/CLIProxyAPI",clisp:"clisp.org",cloc:"github.com/AlDanial/cloc",clog:"clog-tool.github.io","cloudbase/garm":"github.com/cloudbase/garm","cloudbase/garm-provider-openstack":"github.com/cloudbase/garm-provider-openstack",cloudflared:"cloudflare.com/cloudflared",cmake:"cmake.org","cmdline-tools":"android.com/cmdline-tools",cmocka:"cmocka.org",cnquery:"cnquery.io",code:"code.visualstudio.com","code-server":"coder.com/code-server",coder:"coder.com",codex:"openai.com/codex",Codex:"codex.openai.com",cog:"cocogitto.io",cointop:"cointop.sh",colima:"github.com/abiosoft/colima",commit:"github.com/alt-art/commit",complexity:"github.com/thoughtbot/complexity",composer:"getcomposer.org",comrak:"crates.io/comrak",conda:"conda.org",confd:"github.com/abtreece/confd",conform:"github.com/siderolabs/conform",conftest:"conftest.dev",consul:"consul.io","consul-template":"hashicorp.com/consul-template",container:"apple.com/container","container-structure-test":"github.com/GoogleContainerTools/container-structure-test",convco:"convco.github.io",cookiecutter:"github.com/cookiecutter/cookiecutter",copa:"project-copacetic.github.io",coredns:"coredns.io",corepack:"nodejs.org/corepack",coreutils:"gnu.org/coreutils",cosign:"sigstore.dev/cosign",counterfeiter:"github.com/maxbrunsfeld/counterfeiter",cowsay:"github.com/cowsay-org/cowsay",cpanm:"cpanmin.us",cpptoml:"github.com/skystrife/cpptoml",cppunit:"freedesktop.org/cppunit",cpz:"crates.io/cpz",craft:"craft-native.org",craftql:"crates.io/craftql","create-dmg":"github.com/create-dmg/create-dmg",create2crunch:"github.com/0age/create2crunch",croc:"schollz.com/croc",cruft:"cruft.github.io",crush:"charm.sh/crush",cryptography:"cryptography.io",crystal:"crystal-lang.org","cscope.sourceforge":"cscope.sourceforge.io",cstool:"capstone-engine.org",csvdiff:"github.com/aswinkarthik/csvdiff",csview:"crates.io/csview",csvlens:"github.com/YS-L/csvlens",ctags:"ctags.io",ctop:"ctop.sh",cue:"cuelang.org",cups:"openprinting.github.io/cups",curl:"curl.se",cURL:"curl.se",cursor:"cursor.com",Cursor:"cursor.com",cvt:"x.org/libcvt","cyrus-sasl":"cyrusimap.org/cyrus-sasl",cython:"cython.org",daemontools:"cr.yp.to/daemontools",daff:"paulfitz.github.io/daff",dagger:"dagger.io",dart:"dart.dev",dasel:"github.com/TomWright/dasel",databricks:"databricks.com",dateutil:"github.com/dateutil/dateutil",dav1d:"code.videolan.org/videolan/dav1d",daytona:"daytona.io",dbeaver:"dbeaver.io",DBeaver:"dbeaver.io",dblab:"dblab.danvergara.com",dbus:"freedesktop.org/dbus",ddh:"crates.io/ddh",delta:"crates.io/git-delta",deno:"deno.land",depot:"depot.dev","desktop-file-utils":"freedesktop.org/desktop-file-utils","device-mapper":"sourceware.org/dm",devpod:"devpod.sh/cli",dexios:"brxken128.github.io/dexios",dgraph:"dgraph.io",dhall:"dhall-lang.org",Dia:"diabrowser.com",dialog:"invisible-island.net/dialog","diff-so-fancy":"github.com/so-fancy/diff-so-fancy",diffoci:"github.com/reproducible-containers/diffoci",difft:"wilfred.me.uk/difftastic",diffutils:"gnu.org/diffutils",digger:"digger.dev",direnv:"direnv.net",discord:"discord.com",Discord:"discord.com",diskonaut:"crates.io/diskonaut",diskus:"crates.io/diskus",distlib:"pypa.io/distlib",diun:"crazymax.dev/diun",dive:"github.com/wagoodman/dive",dnf5:"rpm.org/dnf5",dnsmasq:"thekelleys.org.uk/dnsmasq",docbook:"docbook.org","docbook-xsl":"docbook.org/xsl",docker:"docker.com/cli","Docker Desktop":"docker.com/desktop","docker-clean":"github.com/ZZROTDesign/docker-clean","docker-compose":"docker.com/compose","docker-credential-ecr-login":"github.com/awslabs/amazon-ecr-credential-helper","docker-desktop":"docker.com/desktop","docker-lock":"github.com/safe-waters/docker-lock","docker-machine":"docker.com/machine","docker/cli":"docker.com/cli",doctave:"doctave.com",doctl:"digitalocean.com/doctl",docutils:"docutils.org",docuum:"crates.io/docuum",dog:"dns.lookup.dog",dos2unix:"waterlan.home.xs4all.nl/dos2unix","dotenv-linter":"dotenv-linter.github.io",dotenvx:"dotenvx.com",dotnet:"dotnet.microsoft.com",doxygen:"doxygen.nl",dozzle:"dozzle.dev",dprint:"dprint.dev",driftctl:"snyk.io/driftctl",drill:"crates.io/drill",dssim:"kornel.ski/dssim",dua:"crates.io/dua",duckdb:"duckdb.org",ducker:"crates.io/ducker",duckscript:"sagiegurari.github.io/duckscript",duf:"github.com/muesli/duf",duk:"duktape.org",dust:"crates.io/du-dust",duti:"github.com/moretension/duti",dxc:"microsoft.com/dxc",dym:"crates.io/didyoumean",e2fsprogs:"sourceforge.net/e2fsprogs",earthly:"earthly.dev/earthly",eas:"expo.dev/eas-cli",eclint:"gitlab.com/greut/eclint",edencommon:"facebook.com/edencommon",edgedb:"edgedb.com",editline:"thrysoee.dk/editline",Eget:"github.com/zyedidia/eget","eigen.tuxfamily":"eigen.tuxfamily.org","eks-node-viewer":"github.com/awslabs/eks-node-viewer",eksctl:"eksctl.io",element:"element.io",Element:"element.io",elementsproject:"elementsproject.org",elfutils:"elfutils.org","elixir-lang":"elixir-lang.org",elizaOS:"elizaOS.github.io",elvish:"elv.sh",emacs:"gnu.org/emacs",enc:"github.com/life4/enc",encore:"encore.dev","encore-go":"encore.dev/go",envchain:"github.com/sorah/envchain",envconsul:"hashicorp.com/envconsul",eol:"endoflife.date",epsilon:"epsilon-project.sourceforge.io",epstool:"ghostgum.com.au/epstool",erlang:"erlang.org",etcd:"etcd.io",ethaddrgen:"github.com/Limeth/ethaddrgen",eureka:"crates.io/eureka",exa:"crates.io/exa",exiftool:"exiftool.org",expect:"tcl-lang.org/expect",expected:"github.com/TartanLlama/expected",exr:"openexr.com",exts:"x.org/exts",eza:"crates.io/eza",f2py:"numpy.org",faac:"sourceforge.net/faac",faad:"sourceforge.net/faad2",factotum:"github.com/snowplow/factotum",fast_float:"github.com/fastfloat/fast_float",fastfetch:"github.com/fastfetch-cli/fastfetch",fastgron:"github.com/adamritter/fastgron",fastlane:"fastlane.tools",fb303:"facebook.com/fb303",fblog:"crates.io/fblog",fend:"printfn.github.io/fend",ffmpeg:"ffmpeg.org",fftw:"fftw.org",fido2:"developers.yubico.com/libfido2",figma:"figma.com",Figma:"figma.com",file:"darwinsys.com/file",filelock:"github.com/tox-dev/filelock",findutils:"gnu.org/findutils","Fira Code":"fira-code",firebase:"google.com/firebase-tools",firefox:"firefox.org",Firefox:"firefox.org",fish:"fishshell.com",fizz:"github.com/facebookincubator/fizz",flac:"xiph.org/flac",flamegraph:"crates.io/flamegraph",flex:"github.com/westes/flex",flipt:"flipt.io",flit:"flit.pypa.io",fltk:"fltk.org",fluentci:"fluentci.io",flutter:"flutter.dev",flux:"fluxcd.io/flux2",fly:"fly.io",flyway:"flywaydb.org",fmt:"fmt.dev","fna-xna.github":"fna-xna.github.io",fnm:"crates.io/fnm",folly:"facebook.com/folly",fontconfig:"freedesktop.org/fontconfig",forc:"fuellabs.github.io/sway","freeglut.sourceforge":"freeglut.sourceforge.io",freetds:"freetds.org",freetype:"freetype.org",freexl:"gaia-gis.it/fossil/freexl",freeze:"charm.sh/freeze","frei0r.dyne":"frei0r.dyne.org",fribidi:"gnu.org/fribidi",fsdiff:"github.com/mycreepy/fsdiff",fselect:"crates.io/fselect",fsrx:"crates.io/fsrx",fswatch:"emcrisostomo.github.io/fswatch",fullycapable:"google.com/fullycapable",fury:"fury.co",fusermount3:"github.com/libfuse/libfuse",fzf:"github.com/junegunn/fzf","g-ir":"gnome.org/gobject-introspection",gauche:"practical-scheme.net/gauche",gawk:"gnu.org/gawk",gc:"hboehm.info/gc",gcc:"gnu.org/gcc",gci:"github.com/daixiang0/gci",gcloud:"google.com/gcloud",gdal:"gdal.org",gdbm:"gnu.org/gdbm","gdk-pixbuf":"gnome.org/gdk-pixbuf",gdown:"wkentaro.github.io/gdown",gdu:"github.com/dundee/gdu","gen-ir":"veracode.com/gen-ir",genact:"svenstaro.github.io/genact",generic_sum:"github.com/Mbed-TLS/mbedtls",geni:"priver.dev/geni",genqlient:"khanacademy.org/genqlient","geos-config":"libgeos.org","get-blessed":"crates.io/get-blessed",getmonero:"getmonero.org",gettext:"gnu.org/gettext","gflags.github":"gflags.github.io",gh:"cli.github.com","gh-desktop":"github.com/desktop",ghostscript:"ghostscript.com",ghostty:"ghostty.org",Ghostty:"ghostty.org",ghq:"github.com/x-motemen/ghq","gi-docgen":"gnome.org/gi-docgen",gif:"giflib.sourceforge.io",gifsicle:"lcdf.org/gifsicle","gimme-aws-creds":"nike.com/gimme-aws-creds",gimp:"gimp.org",GIMP:"gimp.org",ginkgo:"onsi.github.io/ginkgo",girara:"pwmt.org/girara",gist:"rubygems.org/gist",git:"git-scm.org","git-absorb":"crates.io/git-absorb","git-branchless":"crates.io/git-branchless","git-chglog":"github.com/git-chglog","git-cliff":"git-cliff.org","git-credential-manager":"github.com/git-ecosystem/git-credential-manager","git-crypt":"agwa.name/git-crypt","git-filter-repo":"github.com/newren/git-filter-repo","git-gone":"crates.io/git-gone","git-grab":"crates.io/git-grab","git-lfs":"git-lfs.com","git-quick-stats":"git-quick-stats.sh","git-review":"opendev.org/git-review","git-sizer":"github.com/github/git-sizer","git-tidy":"crates.io/git-tidy","git-town":"git-town.com","git-trim":"crates.io/git-trim",git2:"libgit2.org","GitHub Desktop":"github.com/desktop","github-desktop":"github.com/desktop","gitlab-runner":"gitlab.com/gitlab-org/gitlab-runner",gitleaks:"gitleaks.io",gitopolis:"crates.io/gitopolis",gitql:"amrdeveloper.github.io/GQL",gitsign:"sigstore.dev/gitsign",gitu:"crates.io/gitu",gitui:"crates.io/gitui",gitweb:"crates.io/gitweb",GKlib:"github.com/KarypisLab/GKlib",gl2ps:"geuz.org/gl2ps",glab:"gitlab.com/gitlab-org/cli",glauth:"github.com/glauth/glauth",gleam:"gleam.run","glew.sourceforge":"glew.sourceforge.io",glfw:"glfw.org",glib:"gnome.org/glib","glib-networking":"gnome.org/glib-networking","glm.g-truc":"glm.g-truc.net",glog:"google.com/glog",glow:"charm.sh/glow",glslang:"khronos.org/glslang",glslc:"github.com/google/shaderc",gmp:"gnu.org/gmp","gnome-extensions-cli":"github.com/essembeh/gnome-extensions-cli",gnupg:"gnupg.org",gnuplot:"gnuplot.info",gnutls:"gnutls.org",go:"go.dev","go-bindata":"github.com/kevinburke/go-bindata","go-md2man":"github.com/cpuguy83/go-md2man","go-mod-upgrade":"github.com/oligot/go-mod-upgrade","go-passbolt-cli":"github.com/passbolt/go-passbolt-cli","go-redfish-api-idrac":"github.com/greenpau/go-redfish-api-idrac","go-sponge":"github.com/loq9/go-sponge",gofumpt:"mvdan.cc/gofumpt","golangci-lint":"golangci-lint.run",gollum:"github.com/gollum/gollum",gomarkdoc:"github.com/princjef/gomarkdoc",gomplate:"gomplate.ca","google-maps-scraper":"github.com/gosom/google-maps-scraper",googletest:"google.com/googletest",goose:"pressly.github.io/goose",gopass:"github.com/gopasspw/gopass",gops:"github.com/google/gops",goreleaser:"goreleaser.com","gost3411-2012":"github.com/adegtyarev/streebog",gotestsum:"github.com/gotestyourself/gotestsum",gource:"gource.io",govulncheck:"go.dev/govulncheck",gox:"github.com/mitchellh/gox",gperf:"gnu.org/gperf",gpg:"gnupg.org","gpg-tui":"orhun.dev/gpg-tui",gpgme:"gnupg.org/gpgme",gphoto2:"gphoto.org/libgphoto2",gpp:"logological.org/gpp","GPT Engineer":"github.com/AntonOsika/gpt-engineer",gpt4all:"github.com/nomic-ai/gpt4all",gql:"graphqleditor.com/gql",gqlgen:"gqlgen.com",gr2fonttest:"graphite.sil.org",gradle:"gradle.org",granted:"granted.dev",graphene:"ebassi.github.io/graphene",graphviz:"graphviz.org",grep:"gnu.org/grep",groff:"gnu.org/groff",gron:"github.com/tomnomnom/gron",groonga:"groonga.org","groovy-lang":"groovy-lang.org",grpc:"grpc.io",grub:"gnu.org/grub",grype:"github.com/anchore/grype","gsettings-desktop-schemas":"gnome.org/gsettings-desktop-schemas",gsf:"gnome.org/libgsf",gti:"r-wos.org/gti","gtk-mac-integration-gtk3":"gnome.org/gtk-mac-integration-gtk3",gtk3:"gtk.org/gtk3",gtk4:"gtk.org/gtk4","gts.sourceforge":"gts.sourceforge.net",guil:"gnu.org/guile",gum:"charm.sh/gum","gvisor-tap-vsock":"github.com/containers/gvisor-tap-vsock",hac:"crates.io/hac-client",Hack:"hack",hadolint:"github.com/hadolint/hadolint",halibut:"chiark.greenend.org.uk/halibut",handbrake:"handbrake.fr",HandBrake:"handbrake.fr",harfbuzz:"harfbuzz.org",haskell:"haskell.org",hasura:"hasura.io",hatch:"hatch.pypa.io",hcloud:"hetzner.com/hcloud",HDF5:"hdfgroup.org/HDF5",heif:"github.com/strukturag/libheif","heif-converter":"github.com/MaestroError/heif-converter-image",helm:"helm.sh",helmfile:"github.com/helmfile/helmfile",help2man:"gnu.org/help2man",heroku:"heroku.com",hexedit:"rigaux.org/hexedit","Hidden Bar":"hiddenbar.app","hidden-bar":"hiddenbar.app",hiddenbar:"hiddenbar.app",highway:"google.com/highway",himalaya:"pimalaya.org/himalaya",hiredis:"github.com/redis/hiredis",hjson:"hjson.github.io",horcrux:"github.com/jesseduffield/horcrux",htop:"htop.dev",htslib:"htslib.org",httpd:"apache.org/httpd",httpie:"httpie.io",hubble:"cilium.io/hubble","huggingface/cli":"huggingface.co",hugo:"gohugo.io",huniq:"crates.io/huniq",hunspell:"hunspell.github.io",hurl:"hurl.dev",hwloc:"open-mpi.org/hwloc",hyfetch:"github.com/hykilpikonna/hyfetch",hyperfine:"crates.io/hyperfine",ice:"x.org/ice","icon-theme":"freedesktop.org/icon-theme",iconv:"gnu.org/libiconv",idevicedate:"libimobiledevice.org",idn:"gnu.org/libidn",idn2:"gnu.org/libidn2",idna:"github.com/kjd/idna",ifacemaker:"github.com/vburenin/ifacemaker",iina:"iina.io",IINA:"iina.io",ijg:"ijg.org",imageflow_tool:"imageflow.io/imageflow_tool",imagemagick:"imagemagick.org",imageoptim:"imageoptim.com",ImageOptim:"imageoptim.com",imath:"openexr.com/imath","imessage-exporter":"crates.io/imessage-exporter",inetutils:"gnu.org/inetutils",infracost:"infracost.io",inkscape:"inkscape.org",Inkscape:"inkscape.org",insomnia:"insomnia.rest",Insomnia:"insomnia.rest",Inter:"inter",intltool:"freedesktop.org/intltool",invoice:"github.com/maaslalani/invoice",invoke:"pyinvoke.org","ios-deploy":"github.com/ios-control/ios-deploy",ipcalc:"github.com/pete911/ipcalc",ipfs:"ipfs.tech",ipfscluster:"ipfscluster.io",iproute2mac:"github.com/brona/iproute2mac",ipython:"ipython.org",iroh:"iroh.computer","iso-codes":"debian.org/iso-codes",istioctl:"istio.io",iterm:"iterm2.com",iterm2:"iterm2.com",iTerm2:"iterm2.com",itstool:"itstool.org",jadx:"github.com/skylot/jadx",jags:"mcmc-jags.sourceforge.io",jansson:"digip.org/jansson",jasper:"github.com/jasper-software/jasper",java:"openjdk.org",jbang:"jbang.dev",jbig2dec:"jbig2dec.com",jdk:"openjdk.org",jemalloc:"jemalloc.net","Jenkins X":"jenkins-x.io","jenkins-lts":"jenkins.io",jenv:"jenv.be","JetBrains Mono":"jetbrains-mono","JetBrainsMono Nerd Font":"jetbrains-mono-nerd-font",jetp:"jetporch.com","jfrog-cli":"jfrog.com/jfrog-cli",jinja2:"github.com/mattrobenolt/jinja2-cli",jira:"github.com/ankitpokhrel/jira-cli",jless:"jless.io",jmeter:"apache.org/jmeter",jnv:"crates.io/jnv",joshuto:"crates.io/joshuto",jpegxl:"jpeg.org/jpegxl",jq:"stedolan.github.io/jq",jqp:"github.com/noahgorstein/jqp",json:"lloyd.github.io/yajl","json-c":"github.com/json-c/json-c","json-glib":"gnome.org/json-glib",jsoncpp:"github.com/open-source-parsers/jsoncpp",jsonlint:"github.com/zaach/jsonlint",jsonnet:"jsonnet.org",juju:"juju.is",julia:"julialang.org",juliaup:"julialang.org/juliaup",jumppad:"jumppad.dev",jupyter:"jupyter.org",just:"just.systems","just-mcp":"github.com/promptexecution/just-mcp","justwatchcom/sql_exporter":"github.com/justwatchcom/sql_exporter",jwt:"crates.io/jwt-cli",k0sctl:"github.com/k0sproject/k0sctl",k3d:"k3d.io",k3sup:"github.com/alexellis/k3sup",k9s:"k9scli.io","kafka.apache":"kafka.apache.org",kaggle:"kaggle.com","kamal-deploy":"kamal-deploy.org",karabiner:"karabiner-elements.pqrs.org","karabiner-elements":"karabiner-elements.pqrs.org","Karabiner-Elements":"karabiner-elements.pqrs.org",kargo:"akuity.io/kargo",kaspa:"github.com/kaspanet/rusty-kaspa","kaspa-miner":"crates.io/kaspa-miner",kaspad:"github.com/kaspanet/kaspad",kcat:"github.com/edenhill/kcat",keep:"keephq.dev",keepassxc:"keepassxc.org",KeePassXC:"keepassxc.org",keka:"keka.io",Keka:"keka.io",kerberos:"kerberos.org",keyring:"github.com/jaraco/keyring",killport:"crates.io/killport",kind:"kind.sigs.k8s.io",kluctl:"kluctl.io",kotlin:"kotlinlang.org",kotlinlang:"kotlinlang.org",koyeb:"koyeb.com",kpt:"kpt.dev",krampus:"idleberg.github.io/krampus",ksops:"viaduct.ai/ksops",ktlint:"ktlint.github.io",kube:"kubectx.dev","kube-capacity":"github.com/robscott/kube-capacity","kube-linter":"kubelinter.io","kube-score":"github.com/zegl/kube-score",kubebuilder:"kubebuilder.io",kubecm:"kubecm.cloud",kubecolor:"github.com/kubecolor/kubecolor",kubeconform:"github.com/yannh/kubeconform",kubectl:"kubernetes.io/kubectl","kubectl-cnpg":"cloudnative-pg.io","kubectl-krew":"krew.sigs.k8s.io",kubeshark:"kubeshark.co",kubie:"crates.io/kubie",kustomize:"kubernetes.io/kustomize",ladder:"github.com/everywall/ladder",ladspa:"ladspa.org",lame:"lame.sourceforge.io",landrun:"github.com/Zouuup/landrun",langchain:"langchain.com",lapack:"netlib.org/lapack",laravel:"laravel.com",Lato:"lato",lavinmq:"lavinmq.com",lazydocker:"github.com/jesseduffield/lazydocker",lazygit:"github.com/jesseduffield/lazygit",lcov:"github.com/linux-test-project/lcov",ldap:"openldap.org",ldns:"nlnetlabs.nl/ldns",lefthook:"github.com/evilmartians/lefthook",lego:"github.com/go-acme/lego",leo:"leo-lang.org",leptonica:"leptonica.org",lerc:"github.com/Esri/lerc",lftp:"lftp.yar.ru",libaec:"dkrz.de/libaec",libaio:"pagure.io/libaio",libarchive:"libarchive.org",libass:"github.com/libass/libass","libassuan-config":"gnupg.org/libassuan",libatomic_ops:"github.com/ivmai/libatomic_ops",libb2:"blake2.net/libb2",libbluray:"videolan.org/libbluray",libbsd:"freedesktop.org/libbsd",libcap:"kernel.org/libcap","libcap-ng":"people.redhat.com/sgrubb/libcap-ng",libcbor:"github.com/PJK/libcbor",libccd:"github.com/danfis/libccd",libcerf:"jugit.fz-juelich.de/mlz/libcerf",libcuefile:"musepack.net/libcuefile","libcxx.llvm":"libcxx.llvm.org",libcython:"cython.org/libcython",libde265:"github.com/strukturag/libde265",libdeflate:"github.com/ebiggers/libdeflate",libdnf5:"rpm.org/libdnf5",libdrm:"dri.freedesktop.org",libelf:"fossies.org/libelf",libepoxy:"github.com/anholt/libepoxy",libevent:"libevent.org","libexif.github":"libexif.github.io",libffi:"sourceware.org/libffi",libfontenc:"x.org/libfontenc",libfyaml:"github.com/pantoniou/libfyaml",libgcrypt:"gnupg.org/libgcrypt","libgd.github":"libgd.github.io",libgeotiff:"github.com/OSGeo/libgeotiff",libgomp:"gnu.org/gcc/libgomp","libgpg-error":"gnupg.org/libgpg-error",libimagequant:"pngquant.org/lib","libimobiledevice-glue":"libimobiledevice.org/libimobiledevice-glue","libisl.sourceforge":"libisl.sourceforge.io","libjpeg-turbo":"libjpeg-turbo.org",libkml:"github.com/libkml/libkml",libksba:"gnupg.org/libksba",liblinear:"csie.ntu.edu.tw/cjlin/liblinear",liblmdb:"openldap.org/liblmdb","liblqr.wikidot":"liblqr.wikidot.com",libmatio:"matio.sourceforge.io",libmd:"hadrons.org/libmd",libmicrohttpd:"gnu.org/libmicrohttpd",libmng:"sourceforge.net/libmng",libnl:"github.com/thom311/libnl",libnsl:"github.com/thkukuk/libnsl",libomp:"openmp.llvm.org",libpipeline:"libpipeline.gitlab.io/libpipeline",libplacebo:"videolan.org/libplacebo",libpng:"libpng.org",libpq:"postgresql.org/libpq",libproxy:"libproxy.github.io/libproxy",libpsl:"rockdaboot.github.io/libpsl","libpthread-stubs":"x.org/libpthread-stubs",libraw:"libraw.org",librdkafka:"github.com/confluentinc/librdkafka",libreoffice:"libreoffice.org",LibreOffice:"libreoffice.org",libreplaygain:"musepack.net/libreplaygain",librepo:"rpm.org/librepo",librttopo:"git.osgeo.org/gitea/rttopo/librttopo",libsamplerate:"github.com/libsndfile/libsamplerate",libsass:"sass-lang.com/libsass",libsdl:"libsdl.org",libseccomp:"github.com/seccomp/libseccomp",libsecret:"gnome.org/libsecret",libserdes:"github.com/confluentinc/libserdes",libsigsegv:"gnu.org/libsigsegv",libsixel:"github.com/libsixel/libsixel",libSM:"x.org/libSM",libsodium:"libsodium.org",libsolv:"opensuse.org/libsolv",libsoup:"libsoup.org",libspatialite:"gaia-gis.it/libspatialite",libspng:"libspng.org",libsrtp:"cisco.com/libsrtp",libssh:"libssh.org",libssh2:"libssh2.org",libstdcxx:"gnu.org/gcc/libstdcxx",libtatsu:"libimobiledevice.org/libtatsu",libtermkey:"leonerd.org.uk/libtermkey",libtirpc:"sourceforge.net/libtirpc",LibTomMath:"libtom.net/math",libtool:"gnu.org/libtool",libunibreak:"github.com/adah1972/libunibreak",libunistring:"gnu.org/libunistring",liburcu:"liburcu.org","libusb-compat":"libusb.info/compat",libusbmuxd:"libimobiledevice.org/libusbmuxd",libuv:"libuv.org",libva:"intel.com/libva",libvpx:"webmproject.org/libvpx",libvterm:"leonerd.org.uk/libvterm",libwebsockets:"libwebsockets.org",libwpe:"wpewebkit.org/libwpe",libxcrypt:"github.com/besser82/libxcrypt",libxfont2:"x.org/libxfont2",libxres:"x.org/libxres",libyaml:"pyyaml.org/libyaml",libyang:"github.com/cesnet/libyang",license:"github.com/nishanths/license","license-plist":"github.com/mono0926/LicensePlist",licensed:"github.com/licensee/licensed",licensor:"crates.io/licensor",lighthouse:"crates.io/lighthouse","lima-vm":"lima-vm.io",linear:"linear.app",Linear:"linear.app",linkerd:"linkerd.io/linkerd2","linux-headers":"kernel.org/linux-headers","linux-pam":"linux-pam.org",litecli:"litecli.com",littlecms:"littlecms.com","LLaMA.cpp":"github.com/ggerganov/llama.cpp",llm:"llm.datasette.io",llrt:"github.com/awslabs/llrt",llvm:"llvm.org","LM Studio":"lmstudio.ai","lm-studio":"lmstudio.ai",lmstudio:"lmstudio.ai",LocalAI:"localai.io",localstack:"localstack.cloud/cli",logdy:"logdy.dev","logi-options":"logitech.com/options","logi-options-plus":"logitech.com/options",loki:"grafana.com/loki",lolcat:"github.com/jaseg/lolcat",lporg:"github.com/blacktop/lporg",lsd:"github.com/peltoche/lsd",lsof:"github.com/lsof-org/lsof",lua:"lua.org",luajit:"luajit.org",luarocks:"luarocks.org",lunarvim:"lunarvim.org",luv:"github.com/luvit/luv",lux:"github.com/iawia002/lux",lychee:"lychee.cli.rs",lynx:"invisible-island.net/lynx",lz4:"lz4.org",lzip:"nongnu.org/lzip",lzo:"oberhumer.com/lzo",maccy:"maccy.app",Maccy:"maccy.app","macfuse.github":"macfuse.github.io",mackup:"github.com/lra/mackup",mactop:"github.com/context-labs/mactop",macvim:"macvim.org",mail:"github.com/mail-os/mail",mailpit:"github.com/axllent/mailpit",make:"gnu.org/make","mako-render":"makotemplates.org",mamba:"github.com/mamba-org/mamba","man-db":"man-db.gitlab.io/man-db",MariaDB:"mariadb.com/server",marionette:"github.com/skx/marionette",markdownlint:"github.com/igorshubovych/markdownlint-cli",markitdown:"microsoft.com/markitdown","markupsafe.palletsprojects":"markupsafe.palletsprojects.com",mas:"github.com/mas-cli/mas",mash:"pkgx.sh/mash",mask:"crates.io/mask",maturin:"maturin.rs",maven:"maven.apache.org",mc:"min.io/mc","md-tui":"crates.io/md-tui",md2html:"github.com/mity/md4c",md5sha1sum:"microbrew.org/md5sha1sum",mdbook:"rust-lang.github.io/mdBook",mdcat:"crates.io/mdcat",mecab:"taku910.github.io/mecab","mecab-ipadic":"taku910.github.io/mecab-ipadic",MediaInfo:"mediaarea.net",meetingbar:"meetingbar.app",MeetingBar:"meetingbar.app",meilisearch:"meilisearch.com",melt:"charm.sh/melt",memcached:"memcached.org",mercure:"mercure.rocks","mercurial-scm":"mercurial-scm.org",mergestat:"mergestat.com/mergestat-lite",mergiraf:"mergiraf.org","mesa-glu":"freedesktop.org/mesa-glu",mesa3d:"mesa3d.org","MesloLG Nerd Font":"meslo-lg-nerd-font",meson:"mesonbuild.com",MetaGPT:"deepwisdom.ai",metis:"glaros.dtc.umn.edu/metis",micro:"micro-editor.github.io","microcks-cli":"microcks.io",micromamba:"github.com/mamba-org/micro","Midnight Commander":"midnight-commander.org",migrate:"github.com/golang-migrate/migrate",minikube:"kubernetes.io/minikube",minisign:"jedisct1.github.io/minisign",minizip:"zlib.net/minizip",mint:"github.com/yonaskolb/Mint",mise:"mise.jdx.dev",mitmproxy:"mitmproxy.org",mkcert:"mkcert.dev",mkdocs:"mkdocs.org",mmdblookup:"github.com/maxmind/libmaxminddb",mockery:"vektra.github.io/mockery",mockgen:"go.uber.org/mock/mockgen",modal:"modal.com",mods:"charm.sh/mods",mole:"github.com/tw93/mole",mongodb:"mongodb.com",mongosh:"mongodb.com/shell","monitor-control":"monitorcontrol.app",monitorcontrol:"monitorcontrol.app",MonitorControl:"monitorcontrol.app",moon:"moonrepo.dev/moon",mop:"github.com/mop-tracker/mop",mosh:"mosh.org",mozjpeg:"mozilla.org/mozjpeg",mpc:"gnu.org/mpc",mpdecimal:"bytereef.org/mpdecimal",mpfr:"gnu.org/mpfr",mpg123:"mpg123.de",mpmath:"mpmath.org",mprocs:"crates.io/mprocs",mpv:"mpv.io",mscp:"github.com/upa/mscp",msgpack:"msgpack.org",mujs:"mujs.com",mun:"mun-lang.org",mupdf:"mupdf.com",musepack:"musepack.net","musl.libc":"musl.libc.org",mutagen:"github.com/quodlibet/mutagen",Muzzle:"muzzleapp.com",mvfst:"facebook.com/mvfst",mvn:"maven.apache.org","mypy-lang":"mypy-lang.org",mysql:"mysql.com",nak:"github.com/fiatjaf/nak",names:"crates.io/names",nano:"nano-editor.org",navi:"github.com/denisidoro/navi",ncdu:"dev.yorhel.nl/ncdu",ncurses:"invisible-island.net/ncurses",needs:"github.com/NQMVD/needs",neo4j:"neo4j.com",neofetch:"github.com/dylanaraps/neofetch","neon-config":"notroj.github.io/neon",neowofetch:"github.com/hykilpikonna/hyfetch/neowofetch","net-tools":"sourceforge.net/net-tools",netcdf:"unidata.ucar.edu/netcdf","netpbm.sourceforge":"netpbm.sourceforge.net",nettle:"gnu.org/nettle",networkx:"networkx.org",nex:"github.com/blynn/nex",next:"vercel.com/next",nghttp2:"nghttp2.org",nginx:"nginx.org","nim-lang":"nim-lang.org",ninja:"ninja-build.org",nixpacks:"nixpacks.com",nmap:"nmap.org",nnn:"github.com/jarun/nnn",node:"nodejs.org","node-build":"github.com/nodenv/node-build",nomad:"nomadproject.io",normalizer:"github.com/Ousret/charset_normalizer",notion:"notion.so",Notion:"notion.so",npm:"npmjs.com",npmjs:"npmjs.com",npth:"gnupg.org/npth","nspr-config":"mozilla.org/nspr",nss:"mozilla.org/nss",ntp:"ntp.org",nuclei:"projectdiscovery.io/nuclei",nullclaw:"github.com/nullclaw/nullclaw",numactl:"github.com/numactl/numactl",numbat:"numbat.dev",nvim:"neovim.io","nvm-exec":"github.com/nvm-sh/nvm","oapi-codegen":"github.com/deepmap/oapi-codegen","oauth2-proxy":"oauth2-proxy.github.io",obsidian:"obsidian.md",Obsidian:"obsidian.md",oci:"oracle.com/oci-cli",oci2git:"github.com/Virviil/oci2git",ocrmypdf:"github.com/ocrmypdf/OCRmyPDF",odigos:"odigos.io",ogg:"xiph.org/ogg","oh-my-posh":"ohmyposh.dev",ollama:"ollama.com",Ollama:"ollama.com",omekasy:"crates.io/omekasy",onefetch:"onefetch.dev",onepassword:"1password.com","onig-config":"github.com/kkos/oniguruma",opa:"openpolicyagent.org","Open Sans":"open-sans","open-interpreter":"openinterpreter.com","open-mpi":"open-mpi.org",openai:"openai.com/openai-python","openapi-generator":"openapi-generator.tech",openbao:"openbao.org/openbao",openblas:"openblas.net",opencanaryd:"github.com/thinkst/opencanary","opencl-headers":"khronos.org/opencl-headers",openclaw:"github.com/openclaw/openclaw","opencore-amr.sourceforge":"opencore-amr.sourceforge.io",opendap:"opendap.org",openjdk:"openjdk.org",openplayground:"github.com/nat/openplayground","openpmix.github":"openpmix.github.io",openresty:"openresty.org",opensearch:"opensearch.org",openslide:"openslide.org",openssh:"openssh.com",openssl:"openssl.org",OpenSSL:"openssl.org",openstack:"opendev.org/openstack/python-openstackclient",openvpn:"openvpn.net","operator-sdk":"operatorframework.io/operator-sdk",opj:"openjpeg.org",optipng:"sf.net/optipng","opus-codec":"opus-codec.org",oras:"oras.land",orbstack:"orbstack.dev",OrbStack:"orbstack.dev",orc:"gstreamer.freedesktop.org/orc",ord:"ordinals.com","org-stats":"github.com/caarlos0/org-stats","otel-cli":"github.com/equinix-labs/otel-cli","otp-27":"elixir-lang.org/otp-27",ots:"ots.sniptt.com",overmind:"github.com/darthsim/overmind","p11-kit":"freedesktop.org/p11-kit",p7zip:"github.com/p7zip-project/p7zip",pack:"buildpacks.io",packaging:"pypa.io/packaging",packer:"packer.io",pake:"npmjs.com/pake-cli",pakku:"github.com/mycreepy/pakku",pandoc:"pandoc.org","pandoc-crossref":"pandoc.org/crossref",pango:"gnome.org/pango",paper:"github.com/rrthomas/libpaper",par2:"github.com/Parchive/par2cmdline",parallel:"gnu.org/parallel",pastel:"crates.io/pastel",patch:"gnu.org/patch",patchelf:"nixos.org/patchelf","pcap-config":"tcpdump.org",pciaccess:"x.org/pciaccess",pcre:"pcre.org",pcre2:"pcre.org/v2","pcsc-lite":"pcsclite.apdu.fr",pdm:"pdm.fming.dev",Pearcleaner:"pearcleaner.app",periphery:"github.com/peripheryapp/periphery",perl:"perl.org",pgen:"crates.io/pgen",php:"php.net","php-cs-fixer":"symfony.com/cs",phpMyAdmin:"phpmyadmin.net",pier:"crates.io/pier",pik:"crates.io/pik",pike:"github.com/jameswoolfenden/pike",pinentry:"gnupg.org/pinentry",pinniped:"pinniped.dev",pio:"github.com/siiptuo/pio",pip:"pip.pypa.io",pipenv:"pipenv.pypa.io",pipx:"pypa.github.io/pipx",pixi:"prefix.dev",pixlet:"tidbyt.com",pixman:"pixman.org","pkcs11-helper":"github.com/OpenSC/pkcs11-helper",pkg:"vercel.com/pkg","pkg-config":"freedesktop.org/pkg-config",pkgm:"pkgx.sh/pkgm",pkgx:"pkgx.sh","pkl-lang":"pkl-lang.org",plakar:"plakar.io",plantuml:"plantuml.com",platformdirs:"github.com/platformdirs/platformdirs",plistutil:"libimobiledevice.org/libplist","plocate.sesse":"plocate.sesse.net",plotutils:"gnu.org/plotutils",pls:"dhruvkb.dev/pls",pluggy:"pytest.org/pluggy",pluralith:"pluralith.com",pluto:"fairwinds.com/pluto",pnp:"pnpm.io",po4a:"po4a.org",pocket:"pokt.network",pocketbase:"pocketbase.io",pod:"cocoapods.org",pod2man:"eyrie.org/eagle/podlators",podlet:"github.com/containers/podlet",podman:"podman.io",poetry:"python-poetry.org",polkit:"freedesktop.org/polkit",pop:"charm.sh/pop","poppler-data":"poppler.freedesktop.org/poppler-data","poppler-qt5":"freedesktop.org/poppler-qt5","poppler.freedesktop":"poppler.freedesktop.org",popt:"rpm.org/popt",PortAudio:"portaudio.com",portfolio_rs:"crates.io/portfolio_rs",postgres:"postgresql.org",postgresql:"postgresql.org",postgrest:"postgrest.org",postman:"postman.com",Postman:"postman.com",potrace:"sourceforge.net/potrace",pqrs:"crates.io/pqrs","pre-commit":"pre-commit.com",prettier:"prettier.io",prettyping:"denilson.sa.nom.br/prettyping","process-compose":"f1bonacc1.github.io/process-compose",procps:"gitlab.com/procps-ng/procps",proj:"proj.org",projen:"projen.io",protoc:"github.com/protobuf-c/protobuf-c","protoc-gen-connect-go":"connectrpc.org/protoc-gen-connect-go","protoc-gen-go":"google.com/protobuf-go","protoc-gen-go-grpc":"grpc.io/grpc-go","protoc-gen-jsonschema":"github.com/chrusty/protoc-gen-jsonschema",protocol:"x.org/protocol","Protocol Buffers":"protobuf.dev",prql:"prql-lang.org",pscale:"planetscale.com",pstree:"github.com/FredHucht/pstree",psutil:"github.com/giampaolo/psutil",psutils:"github.com/rrthomas/psutils",psycopg2:"psycopg.org/psycopg2",psycopg3:"psycopg.org/psycopg3",pueue:"crates.io/pueue",pugixml:"pugixml.org",pulumi:"pulumi.io",pup:"github.com/gromgit/pup",pushenv:"crates.io/pushenv",putty:"chiark.greenend.org.uk/putty",puzzles:"chiark.greenend.org.uk/puzzles",pwgen:"pwgen.sourceforge.io",pwsh:"microsoft.com/PowerShell",py:"python.org",pycairo:"cairographics.org/pycairo",pycparser:"github.com/eliben/pycparser",pygmentize:"pygments.org",PyGObject:"gnome.org/PyGObject",pylsp:"github.com/python-lsp/python-lsp-server",pyparsing:"github.com/pyparsing/pyparsing","pyproject-build":"github.com/pypa/build","pyqt-bundle":"riverbankcomputing.com/pyqt-builder",pyright:"microsoft.com/pyright",pytest:"pytest.org",python:"python.org","python-certifi":"certifi.io/python-certifi","python-click":"palletsprojects.com/click","python-jinja":"palletsprojects.com/jinja","python-pathspec":"github.com/cpburnz/python-pathspec","python-pillow":"python-pillow.org",pytz:"github.com/stub42/pytz",pyyaml:"pyyaml.org",qemu:"qemu.org",qhull:"qhull.org",qpdf:"qpdf.sourceforge.io",qrencode:"fukuchi.org/qrencode",qsv:"crates.io/qsv",quickwit:"quickwit.io",rabbitmq:"rabbitmq.com",raccoin:"raccoin.org",radicle:"radicle.org",rage:"crates.io/rage",railway:"railway.app",rapidjson:"rapidjson.org",rav1e:"github.com/xiph/rav1e",rawdog:"github.com/abanteai/rawdog",raycast:"raycast.com",Raycast:"raycast.com",rbenv:"github.com/rbenv/rbenv",rbw:"git.tozt.net/rbw",rclone:"rclone.org",re2:"github.com/google/re2",re2c:"re2c.org",readline:"gnu.org/readline","reattach-to-user-namespace":"github.com/ChrisJohnsen/tmux-MacOSX-pasteboard",rebar3:"rebar3.org",rectangle:"rectangle.app",Rectangle:"rectangle.app",redfishtool:"github.com/DMTF/redfishtool",redis:"redis.io",redis_tui:"github.com/mat2cc/redis_tui",regbot:"github.com/regclient/regclient/regbot",regctl:"github.com/regclient/regclient/regctl","regex-tui":"github.com/vitor-mariano/regex-tui",regsync:"github.com/regclient/regclient/regsync",rename:"plasmasturm.org/rename",render:"render.com",replibyte:"replibyte.com",reproc:"github.com/DaanDeMeyer/reproc",requests:"github.com/psf/requests",reshape:"fabianlindfors.se/reshape",restic:"restic.net/restic",resticprofile:"creativeprojects.github.io/resticprofile",rexi:"github.com/royreznik/rexi",rg:"crates.io/ripgrep",rga:"crates.io/ripgrep-all","rhash.sourceforge":"rhash.sourceforge.net",rio:"rioterm.com",rip2:"github.com/MilesCranmer/rip2",ripgrep:"crates.io/ripgrep",rist:"code.videolan.org/rist/librist",rmz:"crates.io/rmz",robot:"robotframework.org",Roboto:"roboto",rome:"rome.tools",ronn:"rtomayko.github.io/ronn",rover:"apollographql.com/rover","rpg-cli":"crates.io/rpg-cli",rpm:"rpm.org/rpm","rpm-sequoia":"rpm.org/rpm-sequoia","rsvg-convert":"gnome.org/librsvg",rswift:"github.com/mac-cain13/R.swift",rsync:"rsync.samba.org",rtmpdump:"rtmpdump.mplayerhq.hu","rtx-cli":"crates.io/rtx-cli",rubberband:"breakfastquay.com/rubberband",rubocop:"rubocop.org",ruby:"ruby-lang.org","ruby-build":"rbenv.org/ruby-build","ruby-install":"github.com/postmodern/ruby-install","ruby-lang":"ruby-lang.org",rubygems:"rubygems.org","rucio-client":"rucio.cern.ch/rucio-client",rucola:"crates.io/rucola-notes",ruff:"astral.sh/ruff",rust:"rust-lang.org","rust-kanban":"crates.io/rust-kanban","rust-script":"rust-script.org","rustls-ffi":"crates.io/rustls-ffi",rustup:"rust-lang.org/rustup",rye:"rye.astral.sh","rye-uv":"github.com/lucianosrp/rye-uv","s-lang":"jedsoft.org/slang",s3cmd:"s3tools.org",s4cmd:"bloomreach.com/s4cmd",s5cmd:"github.com/peak/s5cmd",safe_hashes:"github.com/Cyfrin/safe-tx-hashes-util",sam:"aws.amazon.com/sam",saml2aws:"github.com/Versent/saml2aws",samply:"crates.io/samply",samtools:"htslib.org/samtools",sanitize:"crates.io/sanitize",sasqwatch:"github.com/fabio42/sasqwatch",sassc:"sass-lang.com/sassc",sbt:"scala-sbt.org",scala:"scala-lang.org","scala-lang":"scala-lang.org",scc:"github.com/boyter/scc",sccache:"crates.io/sccache",scdoc:"sr.ht/scdoc","scie-pants":"pantsbuild.org/scie-pants",scons:"scons.org",scrcpy:"github.com/Genymobile/scrcpy",screenresolution:"github.com/jhford/screenresolution",Scriptisto:"github.com/igor-petruk/scriptisto","Scryer Prolog":"scryer.pl",scw:"scaleway.com","sdkman-init.sh":"sdkman.io",SDL_image:"libsdl.org/SDL_image",SDL_mixer:"libsdl.org/SDL_mixer",SDL_ttf:"libsdl.org/SDL_ttf",SDL2_gfx:"ferzkopp.net/SDL2_gfx",SDL2_Pango:"github.com/markuskimius/SDL2_Pango",SeaweedFS:"seaweedfs.com",sed:"gnu.org/sed",semverator:"crates.io/semverator",sensors:"github.com/lm-sensors/lm-sensors","sentry-cli":"sentry.io",serf:"apache.org/serf","session-manager-plugin":"aws.amazon.com/session-manager-plugin",setuptools:"pypa.io/setuptools","sfcgal-config":"sfcgal.org",sftpgo:"sftpgo.com","shaka-packager":"github.com/shaka-project/shaka-packager",shards:"crystal-lang.org/shards",shellcheck:"shellcheck.net",shfmt:"mvdan.cc/sh",shout:"xiph.org/libshout",shovel:"indexsupply.com/shovel",sig:"crates.io/sigrs",signal:"signal.org",Signal:"signal.org",silicon:"crates.io/silicon","sing-box":"sing-box.app",sip:"riverbankcomputing.com/sip",six:"github.com/benjaminp/six",skaffold:"skaffold.dev",skate:"charm.sh/skate",sketchybar:"felixkratz.github.io/SketchyBar",skhd:"github.com/koekeishiya/skhd",skopeo:"github.com/containers/skopeo",slack:"slack.com",Slack:"slack.com",sleek:"crates.io/sleek",slides:"maaslalani.com/slides",slirp:"freedesktop.org/slirp",smartmontools:"smartmontools.org",smi:"ibr.cs.tu-bs.de/libsmi",snaplet:"snaplet.dev/cli",snappy:"google.github.io/snappy",sndfile:"github.com/libsndfile/libsndfile",sniffnet:"sniffnet.net",snipkit:"github.com/lemoony/snipkit",snyk:"snyk.io",socat:"dest-unreach.org/socat",soffice:"libreoffice.org",solana:"solana.com",soldeer:"soldeer.xyz",soliditylang:"soliditylang.org",solr:"solr.apache.org","sonar-scanner":"sonarqube.org/sonarscanner",sops:"getsops.io","Source Code Pro":"source-code-pro","source-highlight":"gnu.org/source-highlight",sourcekitten:"github.com/jpsim/SourceKitten",Sourcery:"github.com/krzysztofzablocki/Sourcery","soxr.sourceforge":"soxr.sourceforge.net",spacer:"github.com/samwho/spacer",spacetime:"spacetimedb.com",sparsecat:"github.com/svenwiltink/sparsecat",spdlog:"github.com/gabime/spdlog","spec-kit":"github.com/github/spec-kit",speedtest:"github.com/sivel/speedtest-cli",speexdec:"speex.org",speexdsp:"github.com/xiph/speexdsp",sphinx:"sphinx-doc.org",spicedb:"authzed.com/spicedb",spider:"crates.io/spider_cli",spin:"fermyon.com/spin",spirv:"khronos.org/SPIRV-Tools","spirv-cross":"khronos.org/SPIRV-Cross",spm:"google.com/sentencepiece",spotify:"spotify.com",Spotify:"spotify.com",spotify_player:"crates.io/spotify_player",sqlboiler:"github.com/volatiletech/sqlboiler",sqlc:"sqlc.dev",sqlfluff:"sqlfluff.com",sqlite:"sqlite.org",sqlite3:"sqlite.org","sqlx-cli":"crates.io/sqlx-cli",sqruff:"quary.dev/sqruff","SquashFS-Tools":"github.com/plougher/squashfs-tools","squashfs-tools-ng":"github.com/AgentD/squashfs-tools-ng",squawk:"squawkhq.com","squidfunk/mkdocs-material":"github.com/squidfunk/mkdocs-material",srgn:"crates.io/srgn",srt:"srtalliance.org",sshx:"sshx.io",ssl3:"curl.se/ssl3","Stable Diffusion web UI":"github.com/AUTOMATIC1111/stable-diffusion-webui",stargazers:"github.com/spencerkimball/stargazers",starpls:"github.com/withered-magic/starpls",starship:"starship.rs",stats:"stats.app",Stats:"stats.app",steampipe:"steampipe.io",stego:"crates.io/stego",stern:"github.com/stern/stern",stow:"gnu.org/stow",strace:"strace.io",streamlink:"streamlink.github.io","stress-ng":"github.com/ColinIanKing/stress-ng",stripe:"stripe.com","suite-sparse":"people.engr.tamu.edu/davis/suitesparse",sup:"github.com/pressly/sup",supabase:"supabase.com/cli",surreal:"surrealdb.com",Surya:"github.com/VikParuchuri/surya",svn:"apache.org/subversion",SvtAv1EncApp:"gitlab.com/AOMediaCodec/SVT-AV1",svu:"github.com/caarlos0/svu",swag:"github.com/swaggo/swag","swagger-codegen":"swagger.io/swagger-codegen",swift:"swift.org","swift-create-xcframework":"github.com/unsignedapps/swift-create-xcframework","swift-outdated":"github.com/kiliankoe/swift-outdated","swift-sh":"github.com/mxcl/swift-sh",swiftenv:"github.com/kylef/swiftenv",swiftformat:"github.com/nicklockwood/SwiftFormat",swiftgen:"github.com/SwiftGen/SwiftGen",swiftlint:"github.com/realm/SwiftLint",swig:"swig.org",syft:"anchore.com/syft",symfony:"symfony.com",sympy:"sympy.org",syncthing:"syncthing.net",synth:"getsynth.com",systemd:"systemd.io",tableplus:"tableplus.com",TablePlus:"tableplus.com",tabulate:"github.com/astanin/python-tabulate","taglib-config":"taglib.org",tailcall:"tailcall.run",tailscale:"tailscale.com",tailwindcss:"tailwindcss.com",talhelper:"budimanjojo.github.io/talhelper",talisman:"thoughtworks.github.io/talisman",talosctl:"talos.dev",taplo:"taplo.tamasfe.dev",tar:"gnu.org/tar",tart:"tart.run",task:"taskfile.dev",tbb:"github.com/oneapi-src/oneTBB",tcl:"tcl.tk/tcl","tcl-lang":"tcl-lang.org",tcsh:"tcsh.org",tdnf:"github.com/vmware/tdnf","tea-gpg-wallet":"crates.io/tea-gpg-wallet","tea-package-builder":"github.com/ArionThinker/tea-package-builder","tea/cli":"tea.xyz",tectonic:"tectonic-typesetting.github.io",telegram:"telegram.org",Telegram:"telegram.org",teller:"tlr.dev",telnet:"apple.com/remote_cmds",templ:"templ.guide",temporal:"temporal.io","term-size":"github.com/sindresorhus/macos-term-size","terminal-notifier":"github.com/julienXX/terminal-notifier",termshark:"termshark.io",termusic:"crates.io/termusic",terraform:"terraform.io","terraform-cdk":"terraform.io/cdk","terraform-docs":"terraform-docs.io",terragrunt:"terragrunt.gruntwork.io",terrarium:"github.com/terrarium-tf",terratag:"terratag.io",tesseract:"tesseract-ocr.github.io",testscript:"go.dev/testscript",texinfo:"gnu.org/texinfo","text generation web UI":"github.com/oobabooga/text-generation-webui","tf-import-gen":"github.com/kishaningithub/tf-import-gen",tfenv:"github.com/tfutils/tfenv",tflint:"github.com/terraform-linters/tflint",tfsec:"aquasecurity.github.io/tfsec",tfupdate:"github.com/minamijoyo/tfupdate","The Silver Searcher":"geoff.greer.fm/ag","The Unarchiver":"the-unarchiver.com","the-unarchiver":"the-unarchiver.com",thefuck:"github.com/nvbn/thefuck",theora:"theora.org",thrift:"apache.org/thrift",thrift1:"facebook.com/fbthrift",ticker:"github.com/achannarasappa/ticker",tidy:"html-tidy.org","tidy-viewer":"crates.io/tidy-viewer",tiff:"simplesystems.org/libtiff",tig:"jonas.github.io/tig",tilt:"tilt.dev",tine:"github.com/OutOfBedlam/tine",tiny:"crates.io/tiny",tinygo:"tinygo.org",tinyxml2:"leethomason.github.io/tinyxml2",tldr:"tldr.sh",tmate:"tmate.io",tmux:"github.com/tmux/tmux",toast:"crates.io/toast",tofu:"opentofu.org",tokei:"crates.io/tokei",tokesura:"github.com/kevinmichaelchen/tokesura","toml-cli":"github.com/MinseokOh/toml-cli",toml11:"github.com/ToruNiina/toml11",tools:"golang.org/tools",topgrade:"crates.io/topgrade",tox:"tox.wiki",traefik:"traefik.io",transmit:"transmit.panic.com",Transmit:"transmit.panic.com",trash:"crates.io/trashy",tre:"github.com/dduan/tre",tree:"gitlab.com/OldManProgrammer/unix-tree","tree-sitter":"tree-sitter.github.io","trezor-agent":"github.com/romanz/trezor-agent",triangle:"github.com/esimov/triangle",trip:"trippy.cli.rs",trivy:"aquasecurity.github.io/trivy","trove-classifiers":"pypa.io/trove-classifiers",trufflehog:"trufflesecurity.com/trufflehog",trurl:"curl.se/trurl",tsc:"typescriptlang.org",TTS:"github.com/coqui-ai/TTS",ttyd:"tsl0922.github.io/ttyd",tunnelblick:"tunnelblick.net",Tunnelblick:"tunnelblick.net",turso:"turso.tech",tuxpaint:"tuxpaint.org",twine:"github.com/pypa/twine",typesense:"typesense.org",typing_extensions:"python.org/typing_extensions",typos:"crates.io/typos",typst:"typst.app",uchardet:"freedesktop.org/uchardet",ucl:"oberhumer.com/ucl",unar:"the-unarchiver.com",unbound:"unbound.net",unibilium:"github.com/neovim/unibilium",unicode:"unicode.org",unixodbc:"unixodbc.org",unrar:"rarlab.com",unxip:"github.com/saagarjha/unxip",unzip:"info-zip.org/unzip","update-mime-database":"freedesktop.org/shared-mime-info",uplift:"upliftci.dev",upx:"upx.github.io",uriparse:"uriparser.github.io",urllib3:"github.com/urllib3/urllib3",usql:"github.com/xo/usql",usque:"github.com/Diniboy1123/usque",usrsctp:"github.com/sctplab/usrsctp",utf8cpp:"github.com/nemtrif/utfcpp",utf8proc:"github.com/JuliaStrings/utf8proc","util-linux":"github.com/util-linux/util-linux","util-macros":"x.org/util-macros","v2.5":"gnupg.org/v2.5",vala:"gnome.org/vala",vale:"vale.sh",valkey:"valkey.io",vals:"github.com/helmfile/vals",vamp:"vamp-plugins.org","vanitygen-plusplus":"github.com/10gic/vanitygen-plusplus",Vanna:"vanna.ai",vault:"vaultproject.io","vault-unseal":"github.com/lrstanley/vault-unseal",vcluster:"vcluster.com",vde:"virtualsquare.org/vde",vdpau:"freedesktop.org/vdpau",velero:"velero.io",versio:"crates.io/versio",versitygw:"versity.com/versitygw",vfkit:"github.com/crc-org/vfkit",vhs:"charm.sh/vhs",vi:"vim.org","vid.stab":"public.hronopik.de/vid.stab",vim:"vim.org",vips:"libvips.org",virtualenv:"virtualenv.pypa.io","Visual Studio Code":"code.visualstudio.com",vite:"vitejs.dev",vitess:"vitess.io",vivid:"crates.io/vivid",vlc:"vlc.app",VLC:"vlc.app",vmaf:"netflix.com/vmaf",volta:"volta.sh",vorbis:"xiph.org/vorbis",vscode:"code.visualstudio.com","vscode cli":"microsoft.com/code-cli",vspipe:"vapoursynth.com","Vulkan-Headers":"github.com/KhronosGroup/Vulkan-Headers","Vulkan-Loader":"github.com/KhronosGroup/Vulkan-Loader",wails:"wails.io",wait4x:"wait4x.dev",wangle:"facebook.com/wangle",warp:"warp.dev",Warp:"warp.dev","wasm-pack":"crates.io/wasm-pack",wasmer:"wasmer.io",watch:"gitlab.com/procps-ng/watch",watchexec:"watchexec.github.io",watchman:"facebook.com/watchman",wavpack:"wavpack.com",wayland:"wayland.freedesktop.org","wayland-protocols":"wayland.freedesktop.org/protocols",webhook:"github.com/adnanh/webhook",webp:"google.com/webp",werf:"werf.io",wezterm:"wezfurlong.org/wezterm",wget:"gnu.org/wget",whatsapp:"whatsapp.com",WhatsApp:"whatsapp.com",when:"github.com/mitsuhiko/when",which:"gnu.org/which",whisper:"github.com/ggerganov/whisper.cpp",whosthere:"github.com/ramonvermeulen/whosthere",wimlib:"wimlib.net",wireshark:"wireshark.org",witr:"github.com/pranshuparmar/witr",woff2:"google.com/woff2",wordl:"crates.io/wordl","wpebackend-fdo":"wpewebkit.org/wpebackend-fdo",wthrr:"crates.io/wthrr",wumpus:"catb.org/wumpus",wunderctl:"wundergraph.com",wxwidgets:"wxwidgets.org",x11:"x.org/x11",x264:"videolan.org/x264",x265:"videolan.org/x265",xau:"x.org/xau",xauth:"x.org/xauth",xaw:"x.org/xaw","xb-tool":"github.com/hughsie/libxmlb",xcaddy:"github.com/caddyserver/xcaddy",xcb:"x.org/protocol/xcb","xcb-util":"freedesktop.org/xcb-util","xcb-util-image":"freedesktop.org/xcb-util-image","xcb-util-keysyms":"freedesktop.org/xcb-util-keysyms","xcb-util-renderutil":"freedesktop.org/xcb-util-renderutil","xcb-util-wm":"freedesktop.org/xcb-util-wm",xcbeautify:"tuist.io/xcbeautify",xchtmlreport:"github.com/XCTestHTMLReport/XCTestHTMLReport",xcodegen:"github.com/yonaskolb/XcodeGen",xcodeproj:"cocoapods.org/xcodeproj",xcodes:"github.com/XcodesOrg/xcodes",xcomposite:"x.org/xcomposite",xcparse:"github.com/ChargePoint/xcparse",xcresultparser:"github.com/a7ex/xcresultparser",xcursor:"x.org/xcursor",xdamage:"x.org/xdamage","xdg-user-dir":"freedesktop.org/xdg-user-dirs",xdmcp:"x.org/xdmcp",xeol:"github.com/xeol-io/xeol","xerces-c":"xerces.apache.org/xerces-c",xfixes:"x.org/xfixes",xft:"x.org/xft",xinerama:"x.org/xinerama",xinput:"x.org/xinput",xkbcli:"xkbcommon.org",xkbfile:"x.org/xkbfile",XKeyboardConfig:"freedesktop.org/XKeyboardConfig",xml:"gnome.org/libxml2",XMLStarlet:"sourceforge.net/xmlstar",xmlwf:"libexpat.github.io",xmu:"x.org/xmu",xorriso:"gnu.org/xorriso",xplr:"xplr.dev",xpm:"x.org/xpm",xpra:"xpra.org",xrandr:"x.org/xrandr","xray-core":"xtls.github.io",xrender:"x.org/xrender",xscrnsaver:"x.org/xscrnsaver",xshmfence:"x.org/xshmfence",xslt:"gnome.org/libxslt",xsv:"github.com/burntsushi/xsv",xtrans:"x.org/xtrans",xtst:"x.org/xtst",xvid:"xvid.com",xxf86vm:"x.org/xxf86vm",xxh:"github.com/Cyan4973/xxHash",yabai:"github.com/koekeishiya/yabai",yadm:"yadm.io","yaml-cpp":"github.com/jbeder/yaml-cpp",yamllint:"github.com/adrienverge/yamllint",yarn:"classic.yarnpkg.com",yasm:"yasm.tortall.net",yazi:"github.com/sxyazi/yazi","youtube-dl":"youtube-dl.org","yt-dlp":"yt-dlp.org","yubikey-agent":"filippo.io/yubikey-agent","yubikey-manager":"developers.yubico.com/yubikey-manager",yuicompressor:"yui.github.io/yuicompressor",zap:"github.com/keith/zap",zarf:"zarf.dev",zathura:"pwmt.org/zathura",zed:"zed.dev",Zed:"zed.dev",zellij:"crates.io/zellij",zeromq:"zeromq.org",zig:"ziglang.org",zimg:"github.com/sekrit-twc/zimg",zip:"info-zip.org/zip",zippy:"github.com/thinkst/zippy",zlib:"zlib.net",zola:"getzola.org",zookeeper:"apache.org/zookeeper",zotregistry:"zotregistry.dev",zoxide:"crates.io/zoxide",zrok:"zrok.io",zsh:"zsh.sourceforge.io","zsh-autosuggestions":"github.com/zsh-users/zsh-autosuggestions","zsh-completions":"github.com/zsh-users/zsh-completions","zsh-syntax-highlighting":"github.com/zsh-users/zsh-syntax-highlighting",zstd:"facebook.com/zstd"}});
2
- export{i as Fc,e as Gc};
@@ -1,11 +0,0 @@
1
- import{Fc as y,Gc as H}from"./chunk-eketndff.js";import{Kc as E}from"./chunk-7dxexqk4.js";H();import x from"node:fs";import S from"node:path";import A from"node:process";var O=S.join(A.cwd(),"github-rate-limit.json"),w=S.join(A.cwd(),"github-cache.json"),R=10,W=3600000;function F(X){try{let J=X.get("X-RateLimit-Remaining"),$=X.get("X-RateLimit-Reset"),Z=X.get("X-RateLimit-Limit");if(J&&$&&Z){let V=new Date(Number($)*1000),Y={remaining:Number(J),limit:Number(Z),resetTime:V.toISOString(),resetTimestamp:Number($)*1000,lastUpdated:new Date().toISOString()};x.writeFileSync(O,JSON.stringify(Y,null,2)),console.warn(`GitHub API rate limit info saved to ${O}`),console.warn(`Rate limit: ${J}/${Z} remaining, resets at ${V.toLocaleString()}`)}}catch(J){console.error("Failed to save GitHub rate limit info:",J)}}function M(){try{if(!x.existsSync(O))return!0;let X=JSON.parse(x.readFileSync(O,"utf8"));if(!X||typeof X.resetTimestamp!=="number"||typeof X.remaining!=="number")return!0;let J=Date.now();if(J>=X.resetTimestamp)return!0;if(X.remaining<=R){let $=new Date(X.resetTimestamp);console.warn(`GitHub API rate limit almost exhausted (${X.remaining}/${X.limit} remaining). Preserving remaining calls until reset at ${$.toLocaleString()}`);let Z=X.resetTimestamp-J;if(Z<300000)console.error(`Waiting ${Math.round(Z/1000)} seconds for rate limit to reset...`);return!1}return!0}catch(X){return console.error("Error checking GitHub rate limit:",X),!0}}function T(){try{if(!x.existsSync(w))return null;let X=JSON.parse(x.readFileSync(w,"utf8")),J=Date.now();if(X.timestamp&&J-X.timestamp<W){let $=new Date(X.timestamp+W);if(console.error(`Using GitHub API cache from ${new Date(X.timestamp).toLocaleString()}, expires at ${$.toLocaleString()}`),Array.isArray(X.packages))return console.error(`Using ${X.packages.length} packages from GitHub API cache`),X.packages;else if(Array.isArray(X.data))return console.error(`Using ${X.data.length} packages from GitHub API cache (old format)`),X.data;else return console.error("GitHub API cache has invalid format, fetching fresh data"),null}return console.error(`GitHub API cache expired (older than ${W/1000/60} minutes), fetching fresh data`),null}catch(X){return console.error("Error reading GitHub cache:",X),null}}function U(X){try{let J={timestamp:Date.now(),packages:X};x.writeFileSync(w,JSON.stringify(J,null,2)),console.error(`GitHub API package list cached to ${w} (${X.length} packages)`)}catch(J){console.error("Error saving GitHub cache:",J)}}async function f(X=0,J){if(J){if(J.startsWith("/")||J.includes("/bin/"))return console.error(`Error: '${J}' appears to be a path, not a valid package name.`),[];return console.log(`Single package mode: only fetching '${J}'`),[J]}console.log("Fetching package list from GitHub API...");let $=T();if($)return console.log("Using cached package list, no GitHub API calls needed"),X>0?$.slice(0,X):$;try{if(!M()){console.warn("GitHub API rate limit preventing request - using cached data or hardcoded list");let z=["node","bun.sh","python.org","go.dev","rust-lang.org","deno.land","ruby-lang.org","php.net","dart.dev","postgresql.org","mozilla.org","mysql.com","nginx.org","redis.io","mongodb.com"];return U(z),X>0?z.slice(0,X):z}console.error("No valid cache found, making GitHub API requests");let Z=await fetch("https://api.github.com/repos/pkgxdev/pantry/contents/projects",{headers:{Accept:"application/vnd.github.v3+json","User-Agent":"ts-pantry"}});if(F(Z.headers),!Z.ok)throw Error(`GitHub API responded with ${Z.status}: ${Z.statusText}`);let Y=(await Z.json()).filter((z)=>z.type==="dir").map((z)=>z.name);console.error(`Found ${Y.length} base projects on GitHub`);let q=[...Y],K=["agwa.name","acorn.io","apache.org","aquasecurity.github.io","aws.amazon.com"],C=["alsa-project.org/alsa-lib","apple.com/remote_cmds","android.com/cmdline-tools","anchore.com/syft","argoproj.github.io/cd","argoproj.github.io/workflows","amrdeveloper.github.io/GQL","authzed.com/spicedb","arduino.github.io/arduino-cli","aomedia.googlesource.com/aom","akuity.io/kargo","asciinema.org/agg","ansible.com/ansible-lint","astral.sh/ruff","astral.sh/uv","apollographql.com/rover","brxken128.github.io/dexios","cedarpolicy.com/cli","blake2.net/libb2"];for(let z of K){if(!M()){console.error(`Skipping nested path check for ${z} due to rate limit concerns`);continue}try{console.error(`Checking for nested projects in ${z}...`);let Q=await fetch(`https://api.github.com/repos/pkgxdev/pantry/contents/projects/${z}`,{headers:{Accept:"application/vnd.github.v3+json","User-Agent":"ts-pantry"}});if(F(Q.headers),!Q.ok){console.error(`Failed to fetch nested projects for ${z}: ${Q.status}`);continue}let B=(await Q.json()).filter((v)=>v.type==="dir").map((v)=>`${z}/${v.name}`);console.error(`Found ${B.length} nested projects for ${z}: ${B.join(", ")}`),q.push(...B)}catch(Q){console.error(`Error fetching nested projects for ${z}:`,Q)}}for(let z of C)if(!q.includes(z))console.error(`Adding known nested project: ${z}`),q.push(z);U(q),console.error(`Cached ${q.length} packages for future use (valid for ${W/60000} minutes)`);let D=X>0?q.slice(0,X):q;return console.error(`Total of ${q.length} projects found (including nested paths)`),D}catch(Z){return console.error("Error fetching package list from GitHub:",Z),[]}}async function b(){try{let{fetchPkgxProjects:X}=await import("./chunk-f1gbsg8z.js"),J=await X();if(console.error(`Found ${J.length} projects`),J.length>0){if(console.error("First 10 projects:"),J.slice(0,10).forEach(($)=>{console.error(`- ${$.name}`)}),J.length>10)console.error(`... and ${J.length-10} more`)}return J}catch(X){return console.error("Failed to fetch projects:",X),[]}}function G(X,J=2){if(X===null)return"null";if(X===void 0)return"undefined";if(Array.isArray(X)){if(X.length===0)return"[]";if(X.every((Z)=>typeof Z==="string")){if(X.length===1)return`[${JSON.stringify(X[0])}]`;let Z=X.map((V)=>JSON.stringify(V)).join(`,
2
- ${" ".repeat(J)}`);return`[
3
- ${" ".repeat(J)}${Z}
4
- ${" ".repeat(J-2)}]`}let $=X.map((Z)=>G(Z,J+2)).join(`,
5
- ${" ".repeat(J+2)}`);return`[
6
- ${" ".repeat(J+2)}${$}
7
- ${" ".repeat(J)}]`}if(typeof X==="object")return`{
8
- ${Object.entries(X).map(([Z,V])=>{let Y=typeof V==="string"?JSON.stringify(V):G(V,J+2);return`${" ".repeat(J)}${Z}: ${Y}`}).join(`,
9
- `)}
10
- }`;return String(X)}function g(X){if(X.includes("/")){let J=X.split("/"),$=J[0],Z=J.slice(1),V=$.replace(/[.-]/g,""),Y=Z.map((K)=>K.replace(/[.-]/g,"")),q="";if(Y.length>0){let K=Y[0];if(V.includes(K.toLowerCase()))q="";else if(Y.length===1)q=K;else q=K}return`${V}${q}`.toLowerCase()}return X.replace(/[.-]/g,"").toLowerCase()}function j(X){if(X.includes("/")){let J=X.split("/"),$=J[0],Z=J.slice(1).join("/"),V=$.replace(/\./g,""),Y=Z.replace(/\//g,"-");return`${V}-${Y}`.toLowerCase()}return X.replace(/\./g,"").toLowerCase()}function P(X){if(X.includes("-")){let $=X.indexOf("-"),Z=X.substring(0,$),V=X.substring($+1),Y=Z;if(Y.endsWith("org")&&!Y.endsWith(".org"))Y=Y.replace(/org$/,".org");if(Y.endsWith("io")&&!Y.endsWith(".io"))Y=Y.replace(/io$/,".io");if(Y.endsWith("com")&&!Y.endsWith(".com"))Y=Y.replace(/com$/,".com");if(Y.endsWith("sh")&&!Y.endsWith(".sh"))Y=Y.replace(/sh$/,".sh");if(Y.endsWith("dev")&&!Y.endsWith(".dev"))Y=Y.replace(/dev$/,".dev");if(Y.endsWith("net")&&!Y.endsWith(".net"))Y=Y.replace(/net$/,".net");if(Y.endsWith("name")&&!Y.endsWith(".name"))Y=Y.replace(/name$/,".name");return`${Y}/${V}`}let J=X;if(J.endsWith("org")&&!J.endsWith(".org"))J=J.replace(/org$/,".org");if(J.endsWith("io")&&!J.endsWith(".io"))J=J.replace(/io$/,".io");if(J.endsWith("com")&&!J.endsWith(".com"))J=J.replace(/com$/,".com");if(J.endsWith("sh")&&!J.endsWith(".sh"))J=J.replace(/sh$/,".sh");if(J.endsWith("dev")&&!J.endsWith(".dev"))J=J.replace(/dev$/,".dev");if(J.endsWith("net")&&!J.endsWith(".net"))J=J.replace(/net$/,".net");if(J.endsWith("land")&&!J.endsWith(".land"))J=J.replace(/land$/,".land");return J}function N(X){let[J]=X.split("@");if(y[J])return y[J];if(J.includes("."))return J;return`${J}.org`}function p(){return{...y}}function h(X){let[J]=X.split("@");return J in y}function l(X){return N(X)}
11
- export{F as Vb,M as Wb,T as Xb,U as Yb,f as Zb,b as _b,G as $b,g as ac,j as bc,P as cc,N as dc,p as ec,h as fc,l as gc};
@@ -1 +0,0 @@
1
- import{Eb as a,Fb as b,Gb as c,Hb as d,Ib as e,Jb as f,Kb as g,Lb as h,Mb as i,Nb as j,Ob as k,Pb as l,Qb as m,Rb as n}from"./chunk-t0k284nq.js";import"./chunk-mq7cybgp.js";import"./chunk-kw6vvwkh.js";import"./chunk-eketndff.js";import"./chunk-7dxexqk4.js";export{i as startPeriodicCleanup,h as setupCleanupHandlers,l as scanPantryPackages,d as saveToCacheAndOutput,a as savePackageAsTypeScript,m as readPantryPackageInfo,c as getValidCachedPackage,f as fetchPkgxProjects,n as fetchPantryPackageWithMetadata,g as fetchPantryPackage,k as fetchAndSavePackage,j as fetchAndSaveAllPackages,e as cleanupBrowserResources,b as cleanStaleOutputFiles};
@@ -1 +0,0 @@
1
- import{Bc as b,Cc as c,Ec as d}from"./chunk-57kwfk9c.js";import{Fc as a}from"./chunk-eketndff.js";import"./chunk-7dxexqk4.js";d();export{b as pantry,c as packages,a as aliases};
@@ -1,2 +0,0 @@
1
- import"./chunk-7dxexqk4.js";import{spawnSync as k}from"node:child_process";import Y from"node:fs";import y from"node:os";import W from"node:path";import V from"node:process";var S="\x1B[31m",P="\x1B[32m",b="\x1B[33m",B="\x1B[2m",M="\x1B[1m",$="\x1B[0m";function U(j){console.log(`${B}>${$} ${j}`)}function v(j){console.log(`${P}✓${$} ${j}`)}function H(j){console.log(`${b}!${$} ${j}`)}function X(j){console.error(`${S}error:${$} ${j}`)}function K(j,q,F){let A=k(j,q,{cwd:F,encoding:"utf8"});return{status:A.status??(A.error?1:0),stdout:A.stdout??"",stderr:A.stderr??(A.error?String(A.error.message):"")}}function I(j,q){let F=k("which",[j],{encoding:"utf8"});if((F.status??1)===0&&F.stdout.trim().length>0)return F.stdout.trim();let A=y.homedir(),J=[W.join(A,".local","bin",j),W.join(A,"pantry",".bin",j),W.join(A,".pantry","bin",j),W.join(A,"Code","Libraries",q,"zig-out","bin",j)];for(let N of J)if(Y.existsSync(N))return N;return null}function D(j){let F=Y.readFileSync(j,"utf8").match(/\.version\s*=\s*"([^"]+)"/);return F?F[1]:null}function T(j,q){let F=W.join(j,"package.json");if(!Y.existsSync(F))return!1;let A=Y.readFileSync(F,"utf8"),J=A.replace(/("version"\s*:\s*)"[^"]*"/,`$1"${q}"`);if(J===A)return!1;return Y.writeFileSync(F,J),!0}async function w(j){let q=j.cwd??V.cwd(),F=W.join(q,"build.zig.zon");if(!Y.existsSync(F))return X(`no build.zig.zon found in ${q}`),console.error(` ${B}\`pantry release\` must be run from the root of a Zig package.${$}`),{exitCode:1};let A=K("git",["rev-parse","--is-inside-work-tree"],q);if(A.status!==0||A.stdout.trim()!=="true")return X("not inside a git repository"),{exitCode:1};let J=K("git",["status","--porcelain"],q);if(J.status===0&&J.stdout.trim().length>0&&!j.dryRun)return X("working tree is not clean — commit or stash your changes first."),console.error(J.stdout.trimEnd()),{exitCode:1};let N=!1;if(!j.noPush){let Q=K("git",["rev-parse","--abbrev-ref","--symbolic-full-name","@{u}"],q);if(N=Q.status===0&&Q.stdout.trim().length>0,!N)H("no upstream branch configured — will commit and tag locally (skipping push).")}let O=D(F);if(!O)return X(`could not read .version from ${F}`),{exitCode:1};let G=I("bump","zig-bump");if(!G)return X("`bump` binary not found (from zig-bump)."),console.error(` ${B}Build it: cd ~/Code/Libraries/zig-bump && zig build, or install it onto your PATH.${$}`),{exitCode:1};if(!j.noChangelog){let Q=I("changelog","zig-changelog");if(Q)if(U("generating changelog from conventional commits..."),j.dryRun)console.log(` ${B}[dry-run] would run: changelog -o CHANGELOG.md${$}`);else{let _=K(Q,["-o","CHANGELOG.md"],q);if(_.status===0)v("CHANGELOG.md updated");else H(`changelog generation skipped${_.stderr?`: ${_.stderr.trim()}`:""}`)}else H("`changelog` binary not found (from zig-changelog) — skipping changelog.")}if(U(`bumping version (${M}${j.type}${$}) from ${O}...`),j.dryRun){let Q=K(G,[j.type,"--dry-run","--yes"],q);if(Q.stdout.trim())console.log(Q.stdout.trimEnd());return console.log(` ${B}[dry-run] no files changed, no commit/tag/push, no publish.${$}`),{exitCode:0}}let C=K(G,[j.type,"--no-commit","--no-tag","--no-push","--yes"],q);if(C.status!==0){if(X("version bump failed"),C.stdout.trim())console.error(C.stdout.trimEnd());if(C.stderr.trim())console.error(C.stderr.trimEnd());return{exitCode:1}}let Z=D(F);if(!Z||Z===O)return X("version did not change after bump"),{exitCode:1};v(`build.zig.zon ${O} → ${Z}`);let x=`v${Z}`;if(K("git",["rev-parse","-q","--verify",`refs/tags/${x}`],q).status===0)return X(`tag ${x} already exists — bump to a version that has no tag yet.`),K("git",["checkout","--","build.zig.zon"],q),{exitCode:1};if(T(q,Z))v(`package.json version → ${Z}`);if(K("git",["add","build.zig.zon"],q),Y.existsSync(W.join(q,"package.json")))K("git",["add","package.json"],q);if(Y.existsSync(W.join(q,"CHANGELOG.md")))K("git",["add","CHANGELOG.md"],q);let L=K("git",["commit","-m",`chore: release ${x}`],q);if(L.status!==0){if(X("git commit failed"),L.stderr.trim())console.error(L.stderr.trimEnd());return{exitCode:1}}v(`committed release ${x}`);let z=K("git",["tag","-a",x,"-m",`Release ${x}`],q);if(z.status!==0){if(X("git tag failed"),z.stderr.trim())console.error(z.stderr.trimEnd());return{exitCode:1}}if(v(`tagged ${x}`),!j.noPush&&N){U("pushing commit and tag...");let Q=K("git",["push"],q);if(Q.status!==0){if(X("git push failed"),Q.stderr.trim())console.error(Q.stderr.trimEnd());return{exitCode:1}}let _=K("git",["push","origin",x],q);if(_.status!==0){if(X(`pushing tag ${x} failed`),_.stderr.trim())console.error(_.stderr.trimEnd());return{exitCode:1}}v(`pushed commit and tag ${x}`)}else H("skipped push (commit and tag are local only).");if(!j.noPublish)R(q);return console.log(`
2
- ${P}${M}✓ released ${x}${$}`),{exitCode:0}}function R(j){let q=I("pantry","pantry");if(!q){H("`pantry` binary not found — skipping publish (the pushed tag's CI will publish).");return}if(K(q,["publish","--help"],j).status!==0){H("`pantry publish` is not available in the installed pantry yet — skipping."),console.log(` ${B}The pushed tag will trigger CI to publish to the registry.${$}`);return}U("publishing to pantry registry...");let A=K(q,["publish"],j);if(A.stdout.trim())console.log(A.stdout.trimEnd());if(A.status===0)v("published to pantry registry");else if(H("publish step failed — the pushed tag's CI can still publish."),A.stderr.trim())console.log(` ${B}${A.stderr.trim()}${$}`)}export{w as runRelease};
@@ -1 +0,0 @@
1
- import{hc as a,ic as b,jc as c,kc as d,lc as e}from"./chunk-kw6vvwkh.js";import"./chunk-7dxexqk4.js";export{d as PACKAGE_ALIASES,c as DEFAULT_TIMEOUT_MS,b as DEFAULT_CACHE_EXPIRATION_MINUTES,a as DEFAULT_CACHE_DIR,e as ALL_KNOWN_PACKAGES};
@@ -1,2 +0,0 @@
1
- var b=".cache/packages",d=1440,h=20000,j={node:"nodejs.org",python:"python.org",go:"go.dev",rust:"rust-lang.org",ruby:"ruby-lang.org",php:"php.net",perl:"perl.org",deno:"deno.land",bun:"bun.sh","bun.com":"bun.sh",git:"git-scm.org",docker:"docker.com/cli",kubectl:"kubernetes.io",terraform:"terraform.io",ansible:"ansible.com",nvim:"neovim.io",vim:"vim.org",curl:"curl.se",sqlite:"sqlite.org"},m=["abseil.io","acorn.io/acorn-cli","agpt.co","agwa.name/git-crypt","akuity.io/kargo","alacritty.org","alembic.sqlalchemy.org","alsa-project.org/alsa-lib","amber-lang.com","amp.rs","amrdeveloper.github.io/GQL","anchore.com/syft","android.com/cmdline-tools","angular.dev","ansible.com","ansible.com/ansible-lint","aomedia.googlesource.com/aom","apache.org/apr","apache.org/apr-util","apache.org/arrow","apache.org/avro","apache.org/httpd","apache.org/jmeter","apache.org/serf","apache.org/subversion","apache.org/thrift","apache.org/zookeeper","apktool.org","apollographql.com/rover","appium.io","apple.com/container","apple.com/remote_cmds","apptainer.org","aquasecurity.github.io/tfsec","aquasecurity.github.io/trivy","arduino.github.io/arduino-cli","argbash.dev","argoproj.github.io/cd","argoproj.github.io/workflows","aria2.github.io","arkade.dev","asciidoctor.org","asciinema.org","asciinema.org/agg","aspell.net","assimp.org","ast-grep.github.io","astral.sh/ruff","astral.sh/ty","astral.sh/uv","atlasgo.io","attrs.org","augeas.net","authzed.com/spicedb","aux4.io","aws.amazon.com/cdk","aws.amazon.com/cli","aws.amazon.com/q","aws.amazon.com/sam","aws.amazon.com/session-manager-plugin","babashka.org","bashly.dannyb.co","bcrypt.sourceforge.net","beyondgrep.com","biomejs.dev","bitcoin.org","bittensor.com","bitwarden.com","blake2.net/libb2","bloomreach.com/s4cmd","boost.org","bore.pub","borgbackup.org","breakfastquay.com/rubberband","browser-use.com","brxken128.github.io/dexios","budimanjojo.github.io/talhelper","buf.build","buildpacks.io","bun.sh","bytebase.com","bytereef.org/mpdecimal","c-ares.org","caddyserver.com","cairographics.org","cairographics.org/pycairo","capnproto.org","capstone-engine.org","carapace.sh","casdoor.org","cask.readthedocs.io","catb.org/wumpus","ccache.dev","cedarpolicy.com/cli","ceph.com/cephadm","ceres-solver.org","certbot.eff.org","certifi.io/python-certifi","cfssl.org","cgal.org","changie.dev","charm.sh/crush","charm.sh/freeze","charm.sh/glow","charm.sh/gum","charm.sh/melt","charm.sh/mods","charm.sh/pop","charm.sh/skate","charm.sh/vhs","checkov.io","chezmoi.io","chiark.greenend.org.uk/halibut","chiark.greenend.org.uk/putty","chiark.greenend.org.uk/puzzles","chompbuild.com","chromedriver.chromium.org","cilium.io/cilium","cilium.io/hubble","circleci.com","cisco.com/libsrtp","classic.yarnpkg.com","cli.github.com","clisp.org","clog-tool.github.io","cloudflare.com/cloudflared","cloudfoundry.org/cf-cli","cloudnative-pg.io","cmake.org","cmocka.org","cnquery.io","cocoapods.org","cocoapods.org/xcodeproj","cocogitto.io","code.videolan.org/aribb24","code.videolan.org/rist/librist","code.videolan.org/videolan/dav1d","coder.com","coder.com/code-server","cointop.sh","conda.org","conftest.dev","connectrpc.org/protoc-gen-connect-go","consul.io","convco.github.io","coredns.io","cpanmin.us","cr.yp.to/daemontools","crates.io/aichat","crates.io/albion_terminal_rpg","crates.io/argc","crates.io/bake-rs","crates.io/bartib","crates.io/bat","crates.io/bottom","crates.io/bpb","crates.io/broot","crates.io/cargo-binstall","crates.io/cargo-tarpaulin","crates.io/cavif","crates.io/checkexec","crates.io/click","crates.io/comrak","crates.io/cpz","crates.io/craftql","crates.io/csview","crates.io/ddh","crates.io/didyoumean","crates.io/diskonaut","crates.io/diskus","crates.io/docuum","crates.io/drill","crates.io/du-dust","crates.io/dua","crates.io/ducker","crates.io/eb","crates.io/eureka","crates.io/exa","crates.io/eza","crates.io/fblog","crates.io/fd-find","crates.io/flamegraph","crates.io/fnm","crates.io/fselect","crates.io/fsrx","crates.io/get-blessed","crates.io/git-absorb","crates.io/git-branchless","crates.io/git-delta","crates.io/git-gone","crates.io/git-grab","crates.io/git-tidy","crates.io/git-trim","crates.io/gitopolis","crates.io/gitu","crates.io/gitui","crates.io/gitweb","crates.io/hac-client","crates.io/huniq","crates.io/hyperfine","crates.io/imessage-exporter","crates.io/jnv","crates.io/joshuto","crates.io/jwt-cli","crates.io/kaspa-miner","crates.io/killport","crates.io/kubie","crates.io/licensor","crates.io/lighthouse","crates.io/mask","crates.io/md-tui","crates.io/mdcat","crates.io/mprocs","crates.io/names","crates.io/omekasy","crates.io/ox","crates.io/pastel","crates.io/pgen","crates.io/pier","crates.io/pik","crates.io/portfolio_rs","crates.io/pqrs","crates.io/pueue","crates.io/pushenv","crates.io/qsv","crates.io/rage","crates.io/ripgrep","crates.io/ripgrep-all","crates.io/rmz","crates.io/rpg-cli","crates.io/rtx-cli","crates.io/rucola-notes","crates.io/rust-kanban","crates.io/rustls-ffi","crates.io/samply","crates.io/sanitize","crates.io/sccache","crates.io/sd","crates.io/semverator","crates.io/sigrs","crates.io/silicon","crates.io/skim","crates.io/sleek","crates.io/spider_cli","crates.io/spotify_player","crates.io/sqlx-cli","crates.io/srgn","crates.io/stego","crates.io/tabiew","crates.io/tea-gpg-wallet","crates.io/termusic","crates.io/tidy-viewer","crates.io/tiny","crates.io/toast","crates.io/tokei","crates.io/topgrade","crates.io/trashy","crates.io/tv-cli","crates.io/typos","crates.io/versio","crates.io/vivid","crates.io/wasm-pack","crates.io/wordl","crates.io/wthrr","crates.io/xh","crates.io/zellij","crates.io/zoxide","crazymax.dev/diun","creativeprojects.github.io/resticprofile","cruft.github.io","cryptography.io","crystal-lang.org","crystal-lang.org/shards","cscope.sourceforge.io","csie.ntu.edu.tw/cjlin/liblinear","ctags.io","ctop.sh","cuelang.org","curl.se","curl.se/ca-certs","curl.se/ssl3","curl.se/trurl","curlie.io","cyrusimap.org/cyrus-sasl","cython.org","cython.org/libcython","d2lang.com","dagger.io","dart.dev","darwinsys.com/file","databricks.com","daytona.io","dblab.danvergara.com","debian.org/bash-completion","debian.org/iso-codes","deepwisdom.ai","denilson.sa.nom.br/prettyping","deno.land","depot.dev","dest-unreach.org/socat","dev.yorhel.nl/ncdu","developer.1password.com/1password-cli","developers.yubico.com/libfido2","developers.yubico.com/yubikey-manager","devpod.sh/cli","dgraph.io","dhall-lang.org","dhruvkb.dev/pls","digger.dev","digip.org/jansson","digitalocean.com/doctl","direnv.net","dkrz.de/libaec","dns.lookup.dog","docbook.org","docbook.org/xsl","docker.com/buildx","docker.com/cli","docker.com/compose","docker.com/machine","doctave.com","docutils.org","dotenv-linter.github.io","dotenvx.com","dotnet.microsoft.com","doxygen.nl","dozzle.dev","dprint.dev","dri.freedesktop.org","duckdb.org","duktape.org","dystroy.org/bacon","earthly.dev/earthly","ebassi.github.io/graphene","edgedb.com","eigen.tuxfamily.org","eksctl.io","elementsproject.org","elfutils.org","elixir-lang.org","elixir-lang.org/otp-27","elizaOS.github.io","elv.sh","emcrisostomo.github.io/fswatch","encore.dev","encore.dev/go","endoflife.date","epsilon-project.sourceforge.io","erlang.org","etcd.io","exiftool.org","expo.dev/eas-cli","eyrie.org/eagle/podlators","f1bonacc1.github.io/process-compose","fabianlindfors.se/reshape","facebook.com/edencommon","facebook.com/fb303","facebook.com/fbthrift","facebook.com/folly","facebook.com/mvfst","facebook.com/wangle","facebook.com/watchman","facebook.com/zstd","fairwinds.com/pluto","fastlane.tools","felixkratz.github.io/SketchyBar","fermyon.com/spin","ferzkopp.net/SDL2_gfx","ffmpeg.org","fftw.org","filippo.io/age","filippo.io/yubikey-agent","fishshell.com","flipt.io","flit.pypa.io","fltk.org","fluentci.io","flutter.dev","fluxcd.io/flux2","fly.io","flywaydb.org","fmt.dev","fna-xna.github.io","fossies.org/libelf","freedesktop.org/XKeyboardConfig","freedesktop.org/appstream","freedesktop.org/at-spi2-atk","freedesktop.org/cppunit","freedesktop.org/dbus","freedesktop.org/desktop-file-utils","freedesktop.org/fontconfig","freedesktop.org/icon-theme","freedesktop.org/intltool","freedesktop.org/libbsd","freedesktop.org/mesa-glu","freedesktop.org/p11-kit","freedesktop.org/pkg-config","freedesktop.org/polkit","freedesktop.org/poppler-qt5","freedesktop.org/shared-mime-info","freedesktop.org/slirp","freedesktop.org/uchardet","freedesktop.org/vdpau","freedesktop.org/xcb-util","freedesktop.org/xcb-util-image","freedesktop.org/xcb-util-keysyms","freedesktop.org/xcb-util-renderutil","freedesktop.org/xcb-util-wm","freedesktop.org/xdg-user-dirs","freeglut.sourceforge.io","freetds.org","freetype.org","frei0r.dyne.org","fuellabs.github.io/sway","fukuchi.org/qrencode","fullstory.com/grpcurl","fury.co","fx.wtf","gaia-gis.it/fossil/freexl","gaia-gis.it/libspatialite","gdal.org","geoff.greer.fm/ag","getclipboard.app","getcomposer.org","getfoundry.sh","getmonero.org","getsops.io","getsynth.com","getzola.org","geuz.org/gl2ps","gflags.github.io","ghostgum.com.au/epstool","ghostscript.com","giflib.sourceforge.io","git-cliff.org","git-lfs.com","git-quick-stats.sh","git-scm.org","git-town.com","git.osgeo.org/gitea/rttopo/librttopo","git.tozt.net/rbw","github.com/0age/create2crunch","github.com/10gic/vanitygen-plusplus","github.com/99designs/aws-vault","github.com/AOMediaCodec/libavif","github.com/AUTOMATIC1111/stable-diffusion-webui","github.com/AgentD/squashfs-tools-ng","github.com/AlDanial/cloc","github.com/AntonOsika/gpt-engineer","github.com/ArionThinker/tea-package-builder","github.com/Carthage/Carthage","github.com/ChargePoint/xcparse","github.com/ChrisJohnsen/tmux-MacOSX-pasteboard","github.com/ColinIanKing/stress-ng","github.com/Cyan4973/xxHash","github.com/Cyfrin/safe-tx-hashes-util","github.com/DMTF/redfishtool","github.com/DaanDeMeyer/reproc","github.com/DaveGamble/cJSON","github.com/Diniboy1123/usque","github.com/Esri/lerc","github.com/Everduin94/better-commits","github.com/FredHucht/pstree","github.com/Genymobile/scrcpy","github.com/GoogleContainerTools/container-structure-test","github.com/JuliaStrings/utf8proc","github.com/KarypisLab/GKlib","github.com/KhronosGroup/Vulkan-Headers","github.com/KhronosGroup/Vulkan-Loader","github.com/Limeth/ethaddrgen","github.com/MaestroError/heif-converter-image","github.com/Mbed-TLS/mbedtls","github.com/MilesCranmer/rip2","github.com/MinseokOh/toml-cli","github.com/NQMVD/needs","github.com/OSGeo/libgeotiff","github.com/OpenSC/pkcs11-helper","github.com/Ousret/charset_normalizer","github.com/OutOfBedlam/tine","github.com/P-H-C/phc-winner-argon2","github.com/PJK/libcbor","github.com/Parchive/par2cmdline","github.com/SwiftGen/SwiftGen","github.com/TartanLlama/expected","github.com/TomWright/dasel","github.com/ToruNiina/toml11","github.com/Versent/saml2aws","github.com/VikParuchuri/surya","github.com/Virviil/oci2git","github.com/XCTestHTMLReport/XCTestHTMLReport","github.com/XcodesOrg/xcodes","github.com/YS-L/csvlens","github.com/Z3Prover/z3","github.com/ZZROTDesign/docker-clean","github.com/Zouuup/landrun","github.com/a7ex/xcresultparser","github.com/abanteai/rawdog","github.com/abiosoft/colima","github.com/abtreece/confd","github.com/achannarasappa/ticker","github.com/adah1972/libunibreak","github.com/adamritter/fastgron","github.com/adegtyarev/streebog","github.com/adnanh/webhook","github.com/adrienverge/yamllint","github.com/alexellis/k3sup","github.com/allure-framework/allure2","github.com/alt-art/commit","github.com/anchore/grype","github.com/anholt/libepoxy","github.com/ankitpokhrel/jira-cli","github.com/antfu/ni","github.com/antimatter15/alpaca.cpp","github.com/aristocratos/btop","github.com/asciidoc-py/asciidoc-py","github.com/astanin/python-tabulate","github.com/aswinkarthik/csvdiff","github.com/aws-cloudformation/cfn-lint","github.com/aws/aws-sdk-cpp","github.com/awslabs/amazon-ecr-credential-helper","github.com/awslabs/dynein","github.com/awslabs/eks-node-viewer","github.com/awslabs/llrt","github.com/axllent/mailpit","github.com/bats-core/bats-core","github.com/bazelbuild/bazelisk","github.com/bazelbuild/buildtools","github.com/benjaminp/six","github.com/benkehoe/aws-whoami-golang","github.com/besser82/libxcrypt","github.com/blacktop/lporg","github.com/blynn/nex","github.com/boyter/scc","github.com/brona/iproute2mac","github.com/brucedom/bruce","github.com/burntsushi/xsv","github.com/caarlos0/org-stats","github.com/caarlos0/svu","github.com/caddy-dns/acmedns","github.com/caddyserver/xcaddy","github.com/canonical/charmcraft","github.com/canonical/pebble","github.com/cesnet/libyang","github.com/chainguard-dev/apko","github.com/charliermarsh/ruff","github.com/chrusty/protoc-gen-jsonschema","github.com/cirruslabs/cirrus-cli","github.com/clever/microplane","github.com/cloudbase/garm","github.com/cloudbase/garm-provider-openstack","github.com/confluentinc/librdkafka","github.com/confluentinc/libserdes","github.com/containers/gvisor-tap-vsock","github.com/containers/podlet","github.com/containers/skopeo","github.com/context-labs/mactop","github.com/cookiecutter/cookiecutter","github.com/coqui-ai/TTS","github.com/cosmtrek/air","github.com/cowsay-org/cowsay","github.com/cpburnz/python-pathspec","github.com/cpuguy83/go-md2man","github.com/crc-org/vfkit","github.com/create-dmg/create-dmg","github.com/daixiang0/gci","github.com/danfis/libccd","github.com/darthsim/overmind","github.com/dateutil/dateutil","github.com/dduan/tre","github.com/deepmap/oapi-codegen","github.com/denisidoro/navi","github.com/dloebl/cgif","github.com/dundee/gdu","github.com/dylanaraps/neofetch","github.com/ebiggers/libdeflate","github.com/edenhill/kcat","github.com/eliben/pycparser","github.com/equinix-labs/otel-cli","github.com/esimov/triangle","github.com/essembeh/gnome-extensions-cli","github.com/everywall/ladder","github.com/evilmartians/lefthook","github.com/fabio42/sasqwatch","github.com/facebookincubator/fizz","github.com/fastfetch-cli/fastfetch","github.com/fastfloat/fast_float","github.com/fiatjaf/nak","github.com/gabime/spdlog","github.com/ggerganov/llama.cpp","github.com/ggerganov/whisper.cpp","github.com/giampaolo/psutil","github.com/git-chglog","github.com/git-ecosystem/git-credential-manager","github.com/github/git-sizer","github.com/github/spec-kit","github.com/glauth/glauth","github.com/go-acme/lego","github.com/gofireflyio/aiac","github.com/golang-migrate/migrate","github.com/gollum/gollum","github.com/google/brotli","github.com/google/gops","github.com/google/re2","github.com/google/shaderc","github.com/gopasspw/gopass","github.com/gosom/google-maps-scraper","github.com/gotestyourself/gotestsum","github.com/greenpau/go-redfish-api-idrac","github.com/gromgit/pup","github.com/hadolint/hadolint","github.com/helmfile/helmfile","github.com/helmfile/vals","github.com/hughsie/libxmlb","github.com/hykilpikonna/hyfetch","github.com/hykilpikonna/hyfetch/neowofetch","github.com/iawia002/lux","github.com/igor-petruk/scriptisto","github.com/igorshubovych/markdownlint-cli","github.com/ios-control/ios-deploy","github.com/ivmai/libatomic_ops","github.com/jameswoolfenden/pike","github.com/jaraco/keyring","github.com/jart/blink","github.com/jarun/nnn","github.com/jaseg/lolcat","github.com/jasper-software/jasper","github.com/jbeder/yaml-cpp","github.com/jesseduffield/horcrux","github.com/jesseduffield/lazydocker","github.com/jesseduffield/lazygit","github.com/jhford/screenresolution","github.com/jj-vcs/jj","github.com/jjjake/internetarchive","github.com/jorgebastida/awslogs","github.com/jpsim/SourceKitten","github.com/json-c/json-c","github.com/julienXX/terminal-notifier","github.com/junegunn/fzf","github.com/justwatchcom/sql_exporter","github.com/k0sproject/k0sctl","github.com/kaspanet/kaspad","github.com/kaspanet/rusty-kaspa","github.com/kdave/btrfs-progs","github.com/keith/zap","github.com/kevinburke/go-bindata","github.com/kevinmichaelchen/tokesura","github.com/kiliankoe/swift-outdated","github.com/kishaningithub/tf-import-gen","github.com/kjd/idna","github.com/kkos/oniguruma","github.com/koekeishiya/skhd","github.com/koekeishiya/yabai","github.com/krzkaczor/ny","github.com/krzysztofzablocki/Sourcery","github.com/kubecolor/kubecolor","github.com/kubernetes-sigs/aws-iam-authenticator","github.com/kylef/swiftenv","github.com/lemoony/snipkit","github.com/libass/libass","github.com/libfuse/libfuse","github.com/libkml/libkml","github.com/libsixel/libsixel","github.com/libsndfile/libsamplerate","github.com/libsndfile/libsndfile","github.com/licensee/licensed","github.com/life4/enc","github.com/linux-test-project/lcov","github.com/lm-sensors/lm-sensors","github.com/loq9/go-sponge","github.com/lra/mackup","github.com/lrstanley/vault-unseal","github.com/lsof-org/lsof","github.com/lu-zero/cargo-c","github.com/lucianosrp/rye-uv","github.com/luvit/luv","github.com/maaslalani/invoice","github.com/mac-cain13/R.swift","github.com/mail-os/mail","github.com/mamba-org/mamba","github.com/mamba-org/micro","github.com/markuskimius/SDL2_Pango","github.com/mas-cli/mas","github.com/mat2cc/redis_tui","github.com/matoszz/blowfish","github.com/mattrobenolt/jinja2-cli","github.com/maxbrunsfeld/counterfeiter","github.com/maxmind/libmaxminddb","github.com/mikefarah/yq","github.com/minamijoyo/tfupdate","github.com/mitchellh/gox","github.com/mitsuhiko/when","github.com/mity/md4c","github.com/moby/buildkit","github.com/mono0926/LicensePlist","github.com/mop-tracker/mop","github.com/moretension/duti","github.com/mrtazz/checkmake","github.com/mtoyoda/sl","github.com/muesli/duf","github.com/mxcl/swift-sh","github.com/mycreepy/fsdiff","github.com/mycreepy/pakku","github.com/nat/openplayground","github.com/nektos/act","github.com/nemtrif/utfcpp","github.com/neovim/unibilium","github.com/newren/git-filter-repo","github.com/nicklockwood/SwiftFormat","github.com/nishanths/license","github.com/noahgorstein/jqp","github.com/nodenv/node-build","github.com/nomic-ai/gpt4all","github.com/npiv/chatblade","github.com/npryce/adr-tools","github.com/nullclaw/nullclaw","github.com/numactl/numactl","github.com/nvbn/thefuck","github.com/nvm-sh/nvm","github.com/oapi-codegen/oapi-codegen","github.com/ocrmypdf/OCRmyPDF","github.com/oligot/go-mod-upgrade","github.com/oneapi-src/oneTBB","github.com/oobabooga/text-generation-webui","github.com/open-source-parsers/jsoncpp","github.com/openclaw/openclaw","github.com/opencollab/arpack-ng","github.com/p7zip-project/p7zip","github.com/pantoniou/libfyaml","github.com/passbolt/go-passbolt-cli","github.com/peak/s5cmd","github.com/peltoche/lsd","github.com/peripheryapp/periphery","github.com/pete911/ipcalc","github.com/platformdirs/platformdirs","github.com/plougher/squashfs-tools","github.com/postmodern/chruby","github.com/postmodern/ruby-install","github.com/pranshuparmar/witr","github.com/pressly/sup","github.com/princjef/gomarkdoc","github.com/promptexecution/just-mcp","github.com/protobuf-c/protobuf-c","github.com/psf/black","github.com/psf/requests","github.com/pypa/build","github.com/pypa/twine","github.com/pyparsing/pyparsing","github.com/python-cffi/cffi","github.com/python-lsp/python-lsp-server","github.com/quodlibet/mutagen","github.com/ramonvermeulen/whosthere","github.com/raskell-io/hx","github.com/rbenv/rbenv","github.com/realm/SwiftLint","github.com/redis/hiredis","github.com/regclient/regclient/regbot","github.com/regclient/regclient/regctl","github.com/regclient/regclient/regsync","github.com/reproducible-containers/diffoci","github.com/robscott/kube-capacity","github.com/romanz/trezor-agent","github.com/royreznik/rexi","github.com/rrthomas/libpaper","github.com/rrthomas/psutils","github.com/rupa/z","github.com/saagarjha/unxip","github.com/safe-waters/docker-lock","github.com/samwho/spacer","github.com/sclevine/yj","github.com/sctplab/usrsctp","github.com/seccomp/libseccomp","github.com/sekrit-twc/zimg","github.com/shaka-project/shaka-packager","github.com/siderolabs/conform","github.com/siiptuo/pio","github.com/sindresorhus/macos-term-size","github.com/sivel/speedtest-cli","github.com/skx/marionette","github.com/skylot/jadx","github.com/skystrife/cpptoml","github.com/snowplow/factotum","github.com/so-fancy/diff-so-fancy","github.com/sorah/envchain","github.com/spencerkimball/stargazers","github.com/squidfunk/mkdocs-material","github.com/stern/stern","github.com/str4d/age-plugin-yubikey","github.com/strukturag/libde265","github.com/strukturag/libheif","github.com/stub42/pytz","github.com/svenwiltink/sparsecat","github.com/swaggo/swag","github.com/sxyazi/yazi","github.com/synfinatic/aws-sso-cli","github.com/terraform-linters/tflint","github.com/terrarium-tf","github.com/tfutils/tfenv","github.com/thinkst/opencanary","github.com/thinkst/zippy","github.com/thkukuk/libnsl","github.com/thom311/libnl","github.com/thoughtbot/complexity","github.com/tmux/tmux","github.com/tom-on-the-internet/cemetery-escape","github.com/tomnomnom/gron","github.com/tox-dev/filelock","github.com/toy/blueutil","github.com/tw93/mole","github.com/unsignedapps/swift-create-xcframework","github.com/upa/mscp","github.com/urllib3/urllib3","github.com/util-linux/util-linux","github.com/vburenin/ifacemaker","github.com/vitor-mariano/regex-tui","github.com/vmware/tdnf","github.com/volatiletech/sqlboiler","github.com/wagoodman/dive","github.com/westes/flex","github.com/withered-magic/starpls","github.com/x-motemen/ghq","github.com/xeol-io/xeol","github.com/xiph/rav1e","github.com/xiph/speexdsp","github.com/xo/usql","github.com/yannh/kubeconform","github.com/yonaskolb/Mint","github.com/yonaskolb/XcodeGen","github.com/zaach/jsonlint","github.com/zegl/kube-score","github.com/zsh-users/zsh-autosuggestions","github.com/zsh-users/zsh-completions","github.com/zsh-users/zsh-syntax-highlighting","github.com/zyedidia/eget","gitlab.com/AOMediaCodec/SVT-AV1","gitlab.com/OldManProgrammer/unix-tree","gitlab.com/gitlab-org/cli","gitlab.com/gitlab-org/gitlab-runner","gitlab.com/greut/eclint","gitlab.com/procps-ng/procps","gitlab.com/procps-ng/watch","gitleaks.io","glaros.dtc.umn.edu/metis","gleam.run","glew.sourceforge.io","glfw.org","glm.g-truc.net","gnome.org/PyGObject","gnome.org/adwaita-icon-theme","gnome.org/atk","gnome.org/gdk-pixbuf","gnome.org/gi-docgen","gnome.org/glib","gnome.org/glib-networking","gnome.org/gobject-introspection","gnome.org/gsettings-desktop-schemas","gnome.org/gtk-mac-integration-gtk3","gnome.org/json-glib","gnome.org/libgsf","gnome.org/librsvg","gnome.org/libsecret","gnome.org/libxml2","gnome.org/libxslt","gnome.org/pango","gnome.org/vala","gnu.org/autoconf","gnu.org/autoconf-archive","gnu.org/automake","gnu.org/bash","gnu.org/bc","gnu.org/binutils","gnu.org/bison","gnu.org/coreutils","gnu.org/diffutils","gnu.org/ed","gnu.org/emacs","gnu.org/findutils","gnu.org/fribidi","gnu.org/gawk","gnu.org/gcc","gnu.org/gcc/libgomp","gnu.org/gcc/libstdcxx","gnu.org/gdbm","gnu.org/gettext","gnu.org/gmp","gnu.org/gperf","gnu.org/grep","gnu.org/groff","gnu.org/grub","gnu.org/guile","gnu.org/help2man","gnu.org/inetutils","gnu.org/libiconv","gnu.org/libidn","gnu.org/libidn2","gnu.org/libmicrohttpd","gnu.org/libsigsegv","gnu.org/libtasn1","gnu.org/libtool","gnu.org/libunistring","gnu.org/m4","gnu.org/make","gnu.org/mpc","gnu.org/mpfr","gnu.org/nettle","gnu.org/parallel","gnu.org/patch","gnu.org/plotutils","gnu.org/readline","gnu.org/sed","gnu.org/source-highlight","gnu.org/stow","gnu.org/tar","gnu.org/texinfo","gnu.org/wget","gnu.org/which","gnu.org/xorriso","gnupg.org","gnupg.org/gpgme","gnupg.org/libassuan","gnupg.org/libgcrypt","gnupg.org/libgpg-error","gnupg.org/libksba","gnupg.org/npth","gnupg.org/pinentry","gnupg.org/v2.5","gnuplot.info","gnutls.org","go.dev","go.dev/govulncheck","go.dev/testscript","go.uber.org/mock/mockgen","gohugo.io","golang.org/tools","golangci-lint.run","gomplate.ca","google.com/double-conversion","google.com/firebase-tools","google.com/fullycapable","google.com/gcloud","google.com/glog","google.com/googletest","google.com/highway","google.com/protobuf-go","google.com/sentencepiece","google.com/webp","google.com/woff2","google.com/zx","google.github.io/snappy","goreleaser.com","gource.io","gphoto.org/libgphoto2","gqlgen.com","gradle.org","grafana.com/loki","granted.dev","graphicsmagick.org","graphite.sil.org","graphqleditor.com/gql","graphviz.org","groonga.org","groovy-lang.org","grpc.io","grpc.io/grpc-go","gstreamer.freedesktop.org/orc","gtk.org/gtk3","gtk.org/gtk4","gts.sourceforge.net","hadrons.org/libmd","harding.motd.ca/autossh","harfbuzz.org","harlequin.sh","hashicorp.com/consul-template","hashicorp.com/envconsul","haskell.org","haskell.org/cabal","hasura.io","hatch.pypa.io","hboehm.info/gc","hdfgroup.org/HDF5","heasarc.gsfc.nasa.gov/cfitsio","helix-editor.com","helm.sh","heroku.com","hetzner.com/hcloud","hjson.github.io","html-tidy.org","htop.dev","htslib.org","htslib.org/samtools","httpie.io","huggingface.co","hugo.wang/cicada","hunspell.github.io","hurl.dev","ibr.cs.tu-bs.de/libsmi","idleberg.github.io/krampus","ijg.org","imageflow.io/imageflow_tool","imagemagick.org","indexsupply.com/shovel","info-zip.org/unzip","info-zip.org/zip","infracost.io","intel.com/libva","invisible-island.net/dialog","invisible-island.net/lynx","invisible-island.net/ncurses","ipfs.tech","ipfscluster.io","ipython.org","iroh.computer","isc.org/bind9","istio.io","itstool.org","ivarch.com/pv","jbang.dev","jbig2dec.com","jedisct1.github.io/minisign","jedsoft.org/slang","jemalloc.net","jenkins-x.io","jenkins.io","jenv.be","jetporch.com","jfrog.com/jfrog-cli","jless.io","jonas.github.io/tig","jpeg.org/jpegxl","json.nlohmann.me","jsonnet.org","jugit.fz-juelich.de/mlz/libcerf","juju.is","julialang.org","julialang.org/juliaup","jumppad.dev","jupyter.org","just.systems","k3d.io","k6.io","k9scli.io","kafka.apache.org","kaggle.com","kamal-deploy.org","keephq.dev","kerberos.org","kernel.org/libcap","kernel.org/linux-headers","khanacademy.org/genqlient","khronos.org/SPIRV-Cross","khronos.org/SPIRV-Tools","khronos.org/glslang","khronos.org/opencl-headers","kind.sigs.k8s.io","kiro.dev/cli","kislyuk.github.io/argcomplete","kluctl.io","ko.build","kornel.ski/dssim","kotlinlang.org","koyeb.com","kpt.dev","krew.sigs.k8s.io","ktlint.github.io","kubebuilder.io","kubecm.cloud","kubectx.dev","kubelinter.io","kubernetes.io/kubectl","kubernetes.io/kustomize","kubernetes.io/minikube","kubeshark.co","ladspa.org","lame.sourceforge.io","langchain.com","laravel.com","lavinmq.com","lcdf.org/gifsicle","leethomason.github.io/tinyxml2","leo-lang.org","leonerd.org.uk/libtermkey","leonerd.org.uk/libvterm","leptonica.org","lftp.yar.ru","libarchive.org","libcxx.llvm.org","libevent.org","libexif.github.io","libexpat.github.io","libgd.github.io","libgeos.org","libgit2.org","libimobiledevice.org","libimobiledevice.org/libimobiledevice-glue","libimobiledevice.org/libplist","libimobiledevice.org/libtatsu","libimobiledevice.org/libusbmuxd","libisl.sourceforge.io","libjpeg-turbo.org","liblqr.wikidot.com","libpipeline.gitlab.io/libpipeline","libpng.org","libproxy.github.io/libproxy","libraw.org","libsdl.org","libsdl.org/SDL_image","libsdl.org/SDL_mixer","libsdl.org/SDL_ttf","libsodium.org","libsoup.org","libspng.org","libssh.org","libssh2.org","libtom.net/math","liburcu.org","libusb.info","libusb.info/compat","libuv.org","libvips.org","libwebsockets.org","libzip.org","lima-vm.io","linkerd.io/linkerd2","linux-pam.org","litecli.com","littlecms.com","llm.datasette.io","lloyd.github.io/yajl","llvm.org","llvm.org/clang-format","localai.io","localstack.cloud/awscli-local","localstack.cloud/cli","logdy.dev","logological.org/gpp","lua.org","luajit.org","luarocks.org","lucagrulla.com/cw","lunarvim.org","lxml.de","lychee.cli.rs","lz4.org","maaslalani.com/slides","macfuse.github.io","macfuse.github.io/v2","macvim.org","mailpit.axllent.org","makotemplates.org","man-db.gitlab.io/man-db","mandoc.bsd.lv","mariadb.com/server","markupsafe.palletsprojects.com","materialize.com","matio.sourceforge.io","maturin.rs","maven.apache.org","mcmc-jags.sourceforge.io","meilisearch.com","memcached.org","mercure.rocks","mercurial-scm.org","mergestat.com/mergestat-lite","mergiraf.org","mesa3d.org","mesonbuild.com","micro-editor.github.io","microbrew.org/md5sha1sum","microcks.io","microsoft.com/PowerShell","microsoft.com/azure-cli","microsoft.com/azure-storage-azcopy","microsoft.com/code-cli","microsoft.com/dxc","microsoft.com/markitdown","microsoft.com/pyright","midnight-commander.org","min.io","min.io/mc","miniupnp.free.fr","mise.jdx.dev","mitmproxy.org","mkcert.dev","mkdocs.org","modal.com","modernc.org/goyacc","mongodb.com","mongodb.com/shell","moonrepo.dev/moon","mosh.org","mozilla.org/cbindgen","mozilla.org/mozjpeg","mozilla.org/nspr","mozilla.org/nss","mpg123.de","mpmath.org","mpv.io","msgpack.org","mujs.com","mun-lang.org","mupdf.com","musepack.net","musepack.net/libcuefile","musepack.net/libreplaygain","musl.libc.org","mvdan.cc/gofumpt","mvdan.cc/sh","mypy-lang.org","mysql.com","nano-editor.org","nasm.us","neovim.io","netflix.com/vmaf","netlib.org/lapack","netpbm.sourceforge.net","networkx.org","nghttp2.org","nginx.org","nike.com/gimme-aws-creds","nim-lang.org","ninja-build.org","nixos.org/patchelf","nixpacks.com","nlnetlabs.nl/ldns","nmap.org","nodejs.org","nodejs.org/corepack","nomadproject.io","nongnu.org/lzip","notroj.github.io/neon","npmjs.com","npmjs.com/pake-cli","ntp.org","numbat.dev","numpy.org","nushell.sh","nx.dev","oauth2-proxy.github.io","oberhumer.com/lzo","oberhumer.com/ucl","odigos.io","ohmyposh.dev","ollama.ai","onefetch.dev","onsi.github.io/ginkgo","open-mpi.org","open-mpi.org/hwloc","openai.com/codex","openai.com/openai-python","openai.com/whisper","openapi-generator.tech","openbao.org/openbao","openblas.net","opencode.ai","opencore-amr.sourceforge.io","opendap.org","opendev.org/git-review","opendev.org/openstack/python-openstackclient","openexr.com","openexr.com/imath","openinterpreter.com","openjdk.org","openjpeg.org","openldap.org","openldap.org/liblmdb","openmp.llvm.org","openpmix.github.io","openpolicyagent.org","openprinting.github.io/cups","openresty.org","opensearch.org","openshift.com","openslide.org","openssh.com","openssl.org","opensuse.org/libsolv","opentofu.org","openvpn.net","operatorframework.io/operator-sdk","opus-codec.org","oracle.com/berkeley-db","oracle.com/oci-cli","oras.land","ordinals.com","orhun.dev/gpg-tui","ots.sniptt.com","packer.io","pagure.io/libaio","pagure.io/xmlto","palletsprojects.com/click","palletsprojects.com/jinja","pandoc.org","pandoc.org/crossref","pantsbuild.org/scie-pants","paulfitz.github.io/daff","pcre.org","pcre.org/v2","pcsclite.apdu.fr","pdm.fming.dev","people.engr.tamu.edu/davis/suitesparse","people.redhat.com/sgrubb/libcap-ng","perl.org","permit.io/cedar-agent","php.net","phpmyadmin.net","pi.dev","pimalaya.org/himalaya","pinniped.dev","pip.pypa.io","pipenv.pypa.io","pixman.org","pkgx.sh","pkgx.sh/brewkit","pkgx.sh/cargox","pkgx.sh/dev","pkgx.sh/mash","pkgx.sh/pkgm","pkl-lang.org","plakar.io","planetscale.com","plantuml.com","plasmasturm.org/rename","plocate.sesse.net","pluralith.com","pngquant.org/lib","pnpm.io","po4a.org","pocketbase.io","podman.io","pokt.network","poppler.freedesktop.org","poppler.freedesktop.org/poppler-data","portaudio.com","postgresql.org","postgresql.org/libpq","postgrest.org","practical-scheme.net/gauche","pre-commit.com","prefix.dev","pressly.github.io/goose","prettier.io","printfn.github.io/fend","priver.dev/geni","proj.org","project-copacetic.github.io","projectdiscovery.io/nuclei","projen.io","protobuf.dev","prql-lang.org","psycopg.org/psycopg2","psycopg.org/psycopg3","public.hronopik.de/vid.stab","pugixml.org","pulumi.io","pwgen.sourceforge.io","pwmt.org/girara","pwmt.org/zathura","pygments.org","pyinvoke.org","pypa.github.io/pipx","pypa.io/distlib","pypa.io/hatch","pypa.io/packaging","pypa.io/setuptools","pypa.io/trove-classifiers","pytest.org","pytest.org/pluggy","python-pillow.org","python-poetry.org","python.org","python.org/typing_extensions","pyyaml.org","pyyaml.org/libyaml","qemu.org","qhull.org","qpdf.sourceforge.io","qt.io","quary.dev/sqruff","quickwit.io","r-wos.org/gti","rabbitmq.com","raccoin.org","radicle.org","railway.app","rapidjson.org","rarlab.com","rbenv.org/ruby-build","rclone.org","re2c.org","reacher.email/check-if-email-exists-cli","rebar3.org","redis.io","render.com","replibyte.com","restic.net/restic","rhash.sourceforge.net","rigaux.org/hexedit","rioterm.com","riverbankcomputing.com/pyqt-builder","riverbankcomputing.com/sip","robotframework.org","rockdaboot.github.io/libpsl","rome.tools","rpm.org/dnf5","rpm.org/libdnf5","rpm.org/librepo","rpm.org/popt","rpm.org/rpm","rpm.org/rpm-sequoia","rsync.samba.org","rtmpdump.mplayerhq.hu","rtomayko.github.io/ronn","rubocop.org","ruby-lang.org","rubygems.org","rubygems.org/gist","rucio.cern.ch/rucio-client","runatlantis.io","rust-lang.github.io/mdBook","rust-lang.org","rust-lang.org/cargo","rust-lang.org/rust-bindgen","rust-lang.org/rustup","rust-script.org","rye.astral.sh","s3tools.org","s3tools.org/s3cmd","saerasoft.com/caesium","sagiegurari.github.io/duckscript","sass-lang.com/libsass","sass-lang.com/sassc","savannah.nongnu.org/acl","savannah.nongnu.org/attr","scala-lang.org","scala-sbt.org","scaleway.com","schollz.com/croc","scons.org","scryer.pl","sdkman.io","seaweedfs.com","sentry.io","sf.net/optipng","sfcgal.org","sftpgo.com","shellcheck.net","sigstore.dev/cosign","sigstore.dev/gitsign","simplesystems.org/libtiff","sing-box.app","skaffold.dev","smartmontools.org","snaplet.dev/cli","sniffnet.net","snyk.io","snyk.io/driftctl","solana.com","soldeer.xyz","soliditylang.org","sonarqube.org/sonarscanner","sourceforge.net/e2fsprogs","sourceforge.net/faac","sourceforge.net/faad2","sourceforge.net/libmng","sourceforge.net/libtirpc","sourceforge.net/net-tools","sourceforge.net/opencore-amr","sourceforge.net/potrace","sourceforge.net/xmlstar","sourceware.org/bzip2","sourceware.org/dm","sourceware.org/libffi","soxr.sourceforge.net","spacetimedb.com","spawn.link","speex.org","sphinx-doc.org","sqlc.dev","sqlfluff.com","sqlite.org","squawkhq.com","sr.ht/scdoc","srtalliance.org","sshx.io","starship.rs","steampipe.io","stedolan.github.io/jq","strace.io","streamlink.github.io","stripe.com","supabase.com/cli","surrealdb.com","svenstaro.github.io/genact","swagger.io/swagger-codegen","swift.org","swig.org","symfony.com","symfony.com/cs","sympy.org","syncthing.net","systemd.io","taglib.org","tailcall.run","tailscale.com","tailwindcss.com","taku910.github.io/mecab","taku910.github.io/mecab-ipadic","talos.dev","taplo.tamasfe.dev","tart.run","taskfile.dev","tcl-lang.org","tcl-lang.org/expect","tcl.tk/tcl","tcpdump.org","tcsh.org","tea.xyz","tectonic-typesetting.github.io","templ.guide","temporal.io","termshark.io","terraform-docs.io","terraform.io","terraform.io/cdk","terragrunt.gruntwork.io","terratag.io","tesseract-ocr.github.io","thekelleys.org.uk/dnsmasq","theora.org","thoughtworks.github.io/talisman","thrysoee.dk/editline","tidbyt.com","tilt.dev","tinybird.co","tinygo.org","tldr.sh","tlr.dev","tmate.io","tox.wiki","traefik.io","tree-sitter.github.io","trippy.cli.rs","trufflesecurity.com/trufflehog","tsl0922.github.io/ttyd","tuist.io/xcbeautify","tukaani.org/xz","turso.tech","tuxpaint.org","typescriptlang.org","typst.app","unbound.net","unicode.org","unidata.ucar.edu/netcdf","unixodbc.org","upliftci.dev","upx.github.io","uriparser.github.io","vale.sh","valkey.io","vamp-plugins.org","vanna.ai","vapoursynth.com","vaultproject.io","vcluster.com","vektra.github.io/mockery","velero.io","veracode.com/gen-ir","vercel.com/next","vercel.com/pkg","versity.com/versitygw","viaduct.ai/ksops","videolan.org/libbluray","videolan.org/libplacebo","videolan.org/x264","videolan.org/x265","vim.org","virtualenv.pypa.io","virtualsquare.org/vde","vitejs.dev","vlang.io","volta.sh","wails.io","wait4x.dev","wasmer.io","watchexec.github.io","waterlan.home.xs4all.nl/dos2unix","wavpack.com","wayland.freedesktop.org","wayland.freedesktop.org/protocols","webmproject.org/libvpx","werf.io","wezfurlong.org/wezterm","wilfred.me.uk/difftastic","wimlib.net","wireshark.org","wix.com/applesimutils","wkentaro.github.io/gdown","wpewebkit.org/libwpe","wpewebkit.org/wpebackend-fdo","wundergraph.com","wxwidgets.org","x.org/applewm","x.org/exts","x.org/ice","x.org/libSM","x.org/libcvt","x.org/libfontenc","x.org/libpthread-stubs","x.org/libxfont2","x.org/libxres","x.org/pciaccess","x.org/protocol","x.org/protocol/xcb","x.org/sm","x.org/util-macros","x.org/x11","x.org/xau","x.org/xauth","x.org/xaw","x.org/xcb","x.org/xcb-util","x.org/xcomposite","x.org/xcursor","x.org/xdamage","x.org/xdmcp","x.org/xfixes","x.org/xft","x.org/xi","x.org/xinerama","x.org/xinput","x.org/xkbfile","x.org/xmu","x.org/xpm","x.org/xrandr","x.org/xrender","x.org/xscrnsaver","x.org/xshmfence","x.org/xt","x.org/xtrans","x.org/xtst","x.org/xv","x.org/xxf86vm","xcfile.dev","xerces.apache.org/xerces-c","xiph.org/flac","xiph.org/libshout","xiph.org/ogg","xiph.org/vorbis","xkbcommon.org","xplr.dev","xpra.org","xtls.github.io","xvid.com","yadm.io","yarnpkg.com","yasm.tortall.net","youtube-dl.org","yt-dlp.org","yui.github.io/yuicompressor","zarf.dev","zeromq.org","ziglang.org","zlib.net","zlib.net/minizip","zotregistry.dev","zrok.io","zsh.sourceforge.io"];
2
- export{b as hc,d as ic,h as jc,j as kc,m as lc};
@@ -1,141 +0,0 @@
1
- import{Sb as R,Tb as T}from"./chunk-mq7cybgp.js";import{Kc as V}from"./chunk-7dxexqk4.js";import O from"node:fs";import _ from"node:path";function N(j,q){let J=R(j);if(J.length===0)return q;if(T(j))return J;return[...new Set([...q,...J])]}function C(j){let q=[],J=O.readdirSync(j,{withFileTypes:!0});for(let w of J){let E=_.join(j,w.name);if(w.isDirectory())q.push(...C(E));else if(w.isFile()&&w.name.endsWith(".ts")&&w.name!=="index.ts"&&w.name!=="aliases.ts")q.push(E)}return q}function M(j,q){let J=j.split("."),w=q.split("."),E=Math.max(J.length,w.length);for(let Q=0;Q<E;Q++){let H=J[Q],U=w[Q];if(H===void 0)return-1;if(U===void 0)return 1;let X=/^\d+$/.test(H),Y=/^\d+$/.test(U);if(X&&Y){let I=Number.parseInt(H,10)-Number.parseInt(U,10);if(I!==0)return I}else if(X!==Y)return X?-1:1;else if(H!==U)return H<U?-1:1}return 0}function y(j,q){let J=(j.startsWith("v")?j.slice(1):j).replace(/_(?=[0-9a-f]+$)/i,"+").split("+")[0],w=(q.startsWith("v")?q.slice(1):q).replace(/_(?=[0-9a-f]+$)/i,"+").split("+")[0],E=J.indexOf("-"),Q=E===-1?J:J.slice(0,E),H=E===-1?null:J.slice(E+1),U=w.indexOf("-"),X=U===-1?w:w.slice(0,U),Y=U===-1?null:w.slice(U+1),I=Q.split("."),W=X.split(".");for(let $=0;$<Math.max(I.length,W.length);$++){let L=Number.parseInt(I[$]||"0",10),z=Number.parseInt(W[$]||"0",10);if(L>z)return-1;if(L<z)return 1}if(H===null&&Y!==null)return-1;if(H!==null&&Y===null)return 1;if(H!==null&&Y!==null){let $=M(H,Y);return $===0?0:-$}return 0}function G(j){return j.replace(/\\/g,"\\\\").replace(/"/g,"\\\"").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t")}function b(j){let q=j.programs.map((H)=>`"${G(H)}"`).join(", "),J=j.dependencies.map((H)=>`"${G(H)}"`).join(", "),w=j.buildDependencies.map((H)=>`"${G(H)}"`).join(", "),E=j.aliases.map((H)=>`"${G(H)}"`).join(", "),Q=j.versions.map((H)=>`"${G(H)}"`).join(", ");return` .{
2
- .name = "${G(j.name)}",
3
- .domain = "${G(j.domain)}",
4
- .description = "${G(j.description)}",
5
- .homepage_url = ${j.homepageUrl?`"${G(j.homepageUrl)}"`:"null"},
6
- .programs = &[_][]const u8{ ${q} },
7
- .dependencies = &[_][]const u8{ ${J} },
8
- .build_dependencies = &[_][]const u8{ ${w} },
9
- .aliases = &[_][]const u8{ ${E} },
10
- .versions = &[_][]const u8{ ${Q} },
11
- }`}function K(j){let q=j,J=q.indexOf("#");if(J>=0)q=q.slice(0,J);q=q.trim();let w="",E=q.indexOf(":");if(E>=0&&["linux","darwin","windows"].includes(q.slice(0,E)))w=`${q.slice(0,E)}:`,q=q.slice(E+1);let Q=q.search(/[\^~><=@]/),H=(Q>=0?q.slice(0,Q):q).trim();return w+H}function v(j){if(!j||typeof j!=="object")return[];let q=(w)=>{let E=(w||"").trim();if(E===""||E==="*")return"";return/^[\^~><=@]/.test(E)?E:`@${E}`},J=[];for(let[w,E]of Object.entries(j))if((w==="linux"||w==="darwin"||w==="windows")&&E&&typeof E==="object")for(let[Q,H]of Object.entries(E))J.push(`${w}:${Q}${q(H)}`);else if(typeof E==="string")J.push(`${w}${q(E)}`);return J}async function P(j,q){let J=_.join(j,`${q}.ts`);if(!O.existsSync(J))return[];try{let w=await import(`file://${_.resolve(J)}`);return v(w.recipe?.dependencies)}catch{return[]}}function S(j,q){let J=new Set(j.map(K)),w=[...j];for(let E of q){let Q=K(E);if(!J.has(Q))J.add(Q),w.push(E)}return w}async function h(j,q){console.log(`\uD83D\uDD0D Scanning packages directory: ${j}`);let J=_.resolve(j,"..","recipes"),w=C(j);console.log(`\uD83D\uDCE6 Found ${w.length} package files`);let E=[],Q=0,H=0;for(let X of w)try{let I=O.readFileSync(X,"utf-8").match(/export const (\w+) = \{/);if(!I){console.warn(`⚠️ Could not find export const in ${X}`),H++;continue}let L=(await import(`file://${_.resolve(X)}`))[I[1]];if(!L||!L.domain){console.warn(`⚠️ Invalid package data in ${X}`),H++;continue}let z=Array.isArray(L.versions)?[...L.versions].sort(y):[];if(E.push({name:L.name||L.domain,domain:L.domain,description:L.description||"",homepageUrl:L.homepageUrl,programs:Array.isArray(L.programs)?L.programs:[],dependencies:S(Array.isArray(L.dependencies)?L.dependencies:[],await P(J,L.domain)),buildDependencies:Array.isArray(L.buildDependencies)?L.buildDependencies:[],aliases:N(L.domain,Array.isArray(L.aliases)?L.aliases:[]),versions:z}),Q++,Q%100===0)console.log(` Processed ${Q}/${w.length} packages...`)}catch(Y){console.error(`❌ Error processing ${X}:`,Y),H++}console.log(`✅ Processed ${Q} packages (${H} errors)`),E.sort((X,Y)=>X.domain.localeCompare(Y.domain));let U=F(E);O.writeFileSync(q,U,"utf-8"),console.log(`✅ Generated Zig definitions: ${q}`),console.log(`\uD83D\uDCCA Total packages: ${E.length}`),Z(q)}function Z(j){try{let{execFileSync:q}=V("node:child_process");q("zig",["fmt",j],{stdio:"ignore"}),console.log(`✨ Formatted with zig fmt: ${j}`)}catch{}}function F(j){let q=j.map((J)=>b(J)).join(`,
12
- `);return`//! Package definitions generated from ts-pantry
13
- //! DO NOT EDIT MANUALLY - This file is auto-generated
14
- //! Total packages: ${j.length}
15
-
16
- const std = @import("std");
17
-
18
- /// Package information
19
- pub const PackageInfo = struct {
20
- name: []const u8,
21
- domain: []const u8,
22
- description: []const u8,
23
- homepage_url: ?[]const u8,
24
- programs: []const []const u8,
25
- dependencies: []const []const u8,
26
- build_dependencies: []const []const u8,
27
- aliases: []const []const u8,
28
- versions: []const []const u8,
29
- };
30
-
31
- /// All known packages (${j.length} total)
32
- pub const packages = [_]PackageInfo{
33
- ${q}
34
- };
35
-
36
- /// Get package by domain name
37
- pub fn getPackageByDomain(domain: []const u8) ?*const PackageInfo {
38
- for (&packages) |*pkg| {
39
- if (std.mem.eql(u8, pkg.domain, domain)) {
40
- return pkg;
41
- }
42
- }
43
- return null;
44
- }
45
-
46
- /// Get package by name (checks domain and aliases)
47
- pub fn getPackageByName(name: []const u8) ?*const PackageInfo {
48
- for (&packages) |*pkg| {
49
- // Check domain
50
- if (std.mem.eql(u8, pkg.domain, name)) {
51
- return pkg;
52
- }
53
-
54
- // Check full name
55
- if (std.mem.eql(u8, pkg.name, name)) {
56
- return pkg;
57
- }
58
-
59
- // Check aliases
60
- for (pkg.aliases) |alias| {
61
- if (std.mem.eql(u8, alias, name)) {
62
- return pkg;
63
- }
64
- }
65
- }
66
- return null;
67
- }
68
-
69
- /// Get all package domains
70
- pub fn getAllDomains(allocator: std.mem.Allocator) ![][]const u8 {
71
- // eslint-disable-next-line prefer-const
72
- var domains = try allocator.alloc([]const u8, packages.len);
73
- for (packages, 0..) |pkg, i| {
74
- domains[i] = pkg.domain;
75
- }
76
- return domains;
77
- }
78
-
79
- /// Get total package count
80
- pub fn getPackageCount() usize {
81
- return packages.len;
82
- }
83
-
84
- test "Package registry has entries" {
85
- try std.testing.expect(packages.len > 0);
86
- }
87
-
88
- test "Can find node package" {
89
- const node = getPackageByName("node");
90
- if (node) |pkg| {
91
- try std.testing.expectEqualStrings("nodejs.org", pkg.domain);
92
- }
93
- }
94
-
95
- test "Can find package by domain" {
96
- const node = getPackageByDomain("nodejs.org");
97
- try std.testing.expect(node != null);
98
- }
99
-
100
- test "Can find package by alias" {
101
- const bun = getPackageByName("bun");
102
- if (bun) |pkg| {
103
- try std.testing.expect(
104
- std.mem.eql(u8, pkg.domain, "bun.sh") or
105
- std.mem.eql(u8, pkg.domain, "bun.com")
106
- );
107
- }
108
- }
109
- `}async function f(j,q){console.log(`\uD83D\uDD0D Generating Zig aliases from: ${j}`);let J=C(j),w={};for(let H of J)try{let X=O.readFileSync(H,"utf-8").match(/export const (\w+) = \{/);if(!X)continue;let W=(await import(`file://${_.resolve(H)}`))[X[1]];if(!W||!W.domain)continue;if(W.aliases&&Array.isArray(W.aliases))for(let L of W.aliases)w[L]=W.domain;if(W.name&&W.name!==W.domain)w[W.name]=W.domain;let $=W.domain.split(".")[0];if($&&!w[$])w[$]=W.domain}catch(U){console.error(`Error processing ${H}:`,U)}let Q=`//! Package aliases generated from ts-pantry
110
- //! DO NOT EDIT MANUALLY - This file is auto-generated
111
-
112
- const std = @import("std");
113
-
114
- pub const Alias = struct {
115
- alias: []const u8,
116
- domain: []const u8,
117
- };
118
-
119
- pub const aliases = [_]Alias{
120
- ${Object.entries(w).sort(([H],[U])=>H.localeCompare(U)).map(([H,U])=>` .{ .alias = "${G(H)}", .domain = "${G(U)}" }`).join(`,
121
- `)}
122
- };
123
-
124
- /// Resolve an alias to a domain name
125
- pub fn resolve_alias(alias: []const u8) ?[]const u8 {
126
- for (aliases) |entry| {
127
- if (std.mem.eql(u8, entry.alias, alias)) {
128
- return entry.domain;
129
- }
130
- }
131
- return null;
132
- }
133
-
134
- test "Alias resolution works" {
135
- const resolved = resolve_alias("node");
136
- if (resolved) |domain| {
137
- try std.testing.expectEqualStrings("nodejs.org", domain);
138
- }
139
- }
140
- `;O.writeFileSync(q,Q,"utf-8"),console.log(`✅ Generated Zig aliases: ${q}`),console.log(`\uD83D\uDCCA Total aliases: ${Object.keys(w).length}`)}
141
- export{y as bb,h as cb,f as db};
@@ -1,2 +0,0 @@
1
- var j=[{domain:"php.net",aliases:["php"]},{domain:"ruby-lang.org",aliases:["ruby"]},{domain:"go.dev",aliases:["go"]},{domain:"nodejs.org",aliases:["node"]},{domain:"python.org",aliases:["python","py"]},{domain:"openjdk.org",aliases:["java","jdk"]},{domain:"kotlinlang.org",aliases:["kotlin"]},{domain:"scala-lang.org",aliases:["scala"]},{domain:"deno.land",aliases:["deno"]},{domain:"openssl.org",aliases:["openssl"]},{domain:"cmake.org",aliases:["cmake"]},{domain:"gradle.org",aliases:["gradle"]},{domain:"maven.apache.org",aliases:["maven","mvn"]},{domain:"curl.se",aliases:["curl"]},{domain:"git-scm.org",aliases:["git"]},{domain:"vim.org",aliases:["vim","vi"]},{domain:"gnupg.org",aliases:["gpg"]},{domain:"crates.io/ripgrep",aliases:["ripgrep","rg"]},{domain:"npmjs.com",aliases:["npm"]},{domain:"classic.yarnpkg.com",aliases:["yarn"]},{domain:"bun.sh",aliases:["bun","bun.com"]},{domain:"docker.com/cli",aliases:["docker"]},{domain:"terraform.io",aliases:["terraform"]},{domain:"kubernetes.io/kubectl",aliases:["kubectl"]},{domain:"helm.sh",aliases:["helm"]},{domain:"sqlite.org",aliases:["sqlite"]},{domain:"postgresql.org",aliases:["postgres","postgresql"]},{domain:"redis.io",aliases:["redis"]},{domain:"mysql.com",aliases:["mysql"]},{domain:"s3tools.org",aliases:["s3cmd"]},{domain:"aws.amazon.com/cdk",aliases:["cdk","aws/cdk"]},{domain:"info-zip.org/zip",aliases:["zip"]},{domain:"info-zip.org/unzip",aliases:["unzip"]}];function k(b){let c=j.find((h)=>h.domain===b);return c?c.aliases:[]}function q(b){return j.find((h)=>h.domain===b)?.replace===!0}function u(){let b={};for(let c of j)for(let h of c.aliases)b[h]=c.domain;return b}
2
- export{k as Sb,q as Tb,u as Ub};
@@ -1 +0,0 @@
1
- import{eb as a,fb as b,gb as c,hb as d,ib as e,jb as f,kb as g}from"./chunk-5cxd7nd8.js";import"./chunk-7dxexqk4.js";export{g as updateApp,d as scanInstalledApps,c as isNewerVersion,e as fetchDesktopCatalogue,f as checkAppUpdates,a as SYSTEM_APPS,b as MAS_APPS};