mirror of
https://github.com/daylinmorgan/oizys.git
synced 2024-12-21 21:50:43 -06:00
Compare commits
6 commits
0446dacc1a
...
b40719a50f
Author | SHA1 | Date | |
---|---|---|---|
b40719a50f | |||
|
13b47f8281 | ||
02e668f2b2 | |||
b634a2fca6 | |||
3d663c381b | |||
7869e1374d |
9 changed files with 73 additions and 143 deletions
2
.github/workflows/build.yml
vendored
2
.github/workflows/build.yml
vendored
|
@ -41,7 +41,7 @@ jobs:
|
|||
with:
|
||||
purge-packages: 'true'
|
||||
|
||||
- uses: DeterminateSystems/nix-installer-action@v14
|
||||
- uses: DeterminateSystems/nix-installer-action@v15
|
||||
with:
|
||||
source-url: https://install.lix.systems/lix/lix-installer-x86_64-linux
|
||||
extra-conf: |
|
||||
|
|
4
.github/workflows/update.yml
vendored
4
.github/workflows/update.yml
vendored
|
@ -32,7 +32,7 @@ jobs:
|
|||
|
||||
- run: git checkout -B flake-lock
|
||||
|
||||
- uses: DeterminateSystems/nix-installer-action@v14
|
||||
- uses: DeterminateSystems/nix-installer-action@v15
|
||||
with:
|
||||
source-url: https://install.lix.systems/lix/lix-installer-x86_64-linux
|
||||
extra-conf: |
|
||||
|
@ -101,7 +101,7 @@ jobs:
|
|||
host: github.com
|
||||
private-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
|
||||
- uses: DeterminateSystems/nix-installer-action@v14
|
||||
- uses: DeterminateSystems/nix-installer-action@v15
|
||||
with:
|
||||
source-url: https://install.lix.systems/lix/lix-installer-x86_64-linux
|
||||
extra-conf: |
|
||||
|
|
165
flake.lock
165
flake.lock
|
@ -240,11 +240,11 @@
|
|||
"zig": "zig"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731002191,
|
||||
"narHash": "sha256-KIt2bydFMFHdaeS27ArWduIeLl8V2FZfceCrspXeJ0k=",
|
||||
"lastModified": 1731351056,
|
||||
"narHash": "sha256-a779DeG+HXRR5Gy/pU47KI/1xeLdeYoA8gyopRRseW4=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "7517d0a86b4008fe7d1a05b675cf1f93152e8b71",
|
||||
"revCount": 7909,
|
||||
"rev": "70b984ebaff9fb9e80e0332a00eaac7b45b52e1d",
|
||||
"revCount": 7942,
|
||||
"type": "git",
|
||||
"url": "ssh://git@github.com/ghostty-org/ghostty"
|
||||
},
|
||||
|
@ -318,11 +318,11 @@
|
|||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730969692,
|
||||
"narHash": "sha256-yHY98IWTLDz57TrseUxdh5QnpngcNCjNXTJ2XCeNhtk=",
|
||||
"lastModified": 1731340175,
|
||||
"narHash": "sha256-IfE7lqNFfFyzAu3pe2XTeNovU9tVzJeGLzQ2B8Segy0=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "e58e97b0a38b8ccc87a4304c9e4e2b37c9966875",
|
||||
"revCount": 5425,
|
||||
"rev": "f5fa84554ffe55e29a397014964238be89ffa54d",
|
||||
"revCount": 5448,
|
||||
"submodules": true,
|
||||
"type": "git",
|
||||
"url": "https://github.com/hyprwm/Hyprland/"
|
||||
|
@ -413,11 +413,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730299948,
|
||||
"narHash": "sha256-RGP06zJWKK7D3E9xrK0DnW4gzcmITy6U7RuePxVX0jI=",
|
||||
"lastModified": 1731019624,
|
||||
"narHash": "sha256-22viQMlEqNjwj+wHpo9FkKD/vlXmj+dzm+23VezXlME=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "8a866a8082a8debb356b257df1af6ce3becbd1a6",
|
||||
"revCount": 16,
|
||||
"rev": "a41acd54a3f887f4050c518de25963d5e7d6208f",
|
||||
"revCount": 18,
|
||||
"type": "git",
|
||||
"url": "https://git.dayl.in/daylin/hyprman.git"
|
||||
},
|
||||
|
@ -438,11 +438,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730968903,
|
||||
"narHash": "sha256-zFvzLXcSm0Ia4XI1SE4FQ9KE63hlGrRWhLtwMolWuR8=",
|
||||
"lastModified": 1731163338,
|
||||
"narHash": "sha256-Qflei0JBeqQ0c8jxA8e982xAxJvfMwfx4Aci2eJi84s=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprutils",
|
||||
"rev": "3ce0cde8709cdacbfba471f8e828433b58a561e9",
|
||||
"rev": "60d3dece30f98e8ad85131829c8529950630d6bc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -482,11 +482,11 @@
|
|||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730635946,
|
||||
"narHash": "sha256-CdeoMnMXpCq4wBWEWHfUUs68zoyAJLfp1JmfXWtmAgc=",
|
||||
"lastModified": 1731240728,
|
||||
"narHash": "sha256-a0xQE3cwZLMsycd9NneFC3z29E+z1PSD/ozhISM7qYQ=",
|
||||
"owner": "nix-community",
|
||||
"repo": "lib-aggregate",
|
||||
"rev": "d0ecc1890f77e9e170f2de279d6902d84a0cbc51",
|
||||
"rev": "807ab623e6d01e931269a28a07c59dcfd6474173",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -498,11 +498,11 @@
|
|||
"lix": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1730938523,
|
||||
"narHash": "sha256-UAh8hocN7Vdl+sXxuToL6Cm1TsMHBpcEmHy+l5xFrMk=",
|
||||
"rev": "72cce7be3f8031ccf6dc9d3c69ba19068b3bd21f",
|
||||
"lastModified": 1731334117,
|
||||
"narHash": "sha256-GoddkPg0/UDv06KcQJiOYP/2IzruYorbI03QRCjN3K8=",
|
||||
"rev": "8a9094303bc7873c979e54ea20b9f50464ee3965",
|
||||
"type": "tarball",
|
||||
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/72cce7be3f8031ccf6dc9d3c69ba19068b3bd21f.tar.gz?rev=72cce7be3f8031ccf6dc9d3c69ba19068b3bd21f"
|
||||
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/8a9094303bc7873c979e54ea20b9f50464ee3965.tar.gz?rev=8a9094303bc7873c979e54ea20b9f50464ee3965"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
|
@ -521,11 +521,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1727752861,
|
||||
"narHash": "sha256-jowmo2aEzrEpPSM96IWtajuogdJm7DjAWxFTEb7Ct0s=",
|
||||
"rev": "fd186f535a4ac7ae35d98c1dd5d79f0a81b7976d",
|
||||
"lastModified": 1731185731,
|
||||
"narHash": "sha256-RNaIu43b9PoXEhW4OqXUNZKY/jezQyCYWwdv1M0VjsA=",
|
||||
"rev": "691193879d96bdfd1e6ab5ebcca2fadc7604cf34",
|
||||
"type": "tarball",
|
||||
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/fd186f535a4ac7ae35d98c1dd5d79f0a81b7976d.tar.gz?rev=fd186f535a4ac7ae35d98c1dd5d79f0a81b7976d"
|
||||
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/691193879d96bdfd1e6ab5ebcca2fadc7604cf34.tar.gz?rev=691193879d96bdfd1e6ab5ebcca2fadc7604cf34"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
|
@ -615,11 +615,11 @@
|
|||
"treefmt-nix": "treefmt-nix"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730389079,
|
||||
"narHash": "sha256-g/CJ/KKe5MGsVx1oCBl0F9aCdcNSDeOw8H7e5QDGa2c=",
|
||||
"lastModified": 1731250407,
|
||||
"narHash": "sha256-AwyDiazOqBZBUPp0vqYEzvBseZo3Eg16mfjAFvKv2lc=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-eval-jobs",
|
||||
"rev": "7f9159a16584ee86eed077c8a73e845690b7d513",
|
||||
"rev": "96902c4573cd03ea7e533634cb49861148f49a7a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -657,11 +657,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730604744,
|
||||
"narHash": "sha256-/MK6QU4iOozJ4oHTfZipGtOgaT/uy/Jm4foCqHQeYR4=",
|
||||
"lastModified": 1731209121,
|
||||
"narHash": "sha256-BF7FBh1hIYPDihdUlImHGsQzaJZVLLfYqfDx41wjuF0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-index-database",
|
||||
"rev": "cc2ddbf2df8ef7cc933543b1b42b845ee4772318",
|
||||
"rev": "896019f04b22ce5db4c0ee4f89978694f44345c3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -708,11 +708,11 @@
|
|||
},
|
||||
"nixpkgs-lib": {
|
||||
"locked": {
|
||||
"lastModified": 1730595754,
|
||||
"narHash": "sha256-F6DyPKY2WAUf8fpaT9vQwwRUs74InQM36ng//h9wNhY=",
|
||||
"lastModified": 1731200463,
|
||||
"narHash": "sha256-qDaAweJjdFbVExqs8aG27urUgcgKufkIngHW3Rzustg=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"rev": "2376a861a1a15f05339245fbaa4422f2d1bdf485",
|
||||
"rev": "e04234d263750db01c78a412690363dc2226e68a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -745,11 +745,11 @@
|
|||
"nixpkgs": "nixpkgs_6"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730993036,
|
||||
"narHash": "sha256-GbCKT3+7FaY0tlIuK0Wdc10HqiN3FBmgHOdnvTAyJGM=",
|
||||
"lastModified": 1731353483,
|
||||
"narHash": "sha256-0IZPqgc4k/VqP3yLhNw8QbiPRq56Cl07ewRv7aqQZIw=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs-wayland",
|
||||
"rev": "ddfa3b485c17ad2594c44c4785533ea45db4e32a",
|
||||
"rev": "e71b4345d9aebca98d9ea91eb5f86d57f804f6d6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -792,11 +792,11 @@
|
|||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1730785428,
|
||||
"narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=",
|
||||
"lastModified": 1731139594,
|
||||
"narHash": "sha256-IigrKK3vYRpUu+HEjPL/phrfh7Ox881er1UEsZvw9Q4=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7",
|
||||
"rev": "76612b17c0ce71689921ca12d9ffdc9c23ce40b2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -808,11 +808,11 @@
|
|||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1723221148,
|
||||
"narHash": "sha256-7pjpeQlZUNQ4eeVntytU3jkw9dFK3k1Htgk2iuXjaD8=",
|
||||
"lastModified": 1730958623,
|
||||
"narHash": "sha256-JwQZIGSYnRNOgDDoIgqKITrPVil+RMWHsZH1eE1VGN0=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "154bcb95ad51bc257c2ce4043a725de6ca700ef6",
|
||||
"rev": "85f7e662eda4fa3a995556527c87b2524b691933",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -824,11 +824,11 @@
|
|||
},
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1730785428,
|
||||
"narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=",
|
||||
"lastModified": 1731139594,
|
||||
"narHash": "sha256-IigrKK3vYRpUu+HEjPL/phrfh7Ox881er1UEsZvw9Q4=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7",
|
||||
"rev": "76612b17c0ce71689921ca12d9ffdc9c23ce40b2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -914,30 +914,6 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"roc": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_4",
|
||||
"flake-utils": "flake-utils_5",
|
||||
"nixgl": "nixgl",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"rust-overlay": "rust-overlay"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730937151,
|
||||
"narHash": "sha256-wU1ZpJhIS7L7h5GybhKuDkeqm4I6KI+NLOoKaDMBp7w=",
|
||||
"owner": "roc-lang",
|
||||
"repo": "roc",
|
||||
"rev": "1a5776653cebeeb03db57adce8f51910b7296295",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "roc-lang",
|
||||
"repo": "roc",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"comin": "comin",
|
||||
|
@ -1182,53 +1158,6 @@
|
|||
"repo": "zig-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"zig-overlay": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_5",
|
||||
"flake-utils": "flake-utils_6",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730981477,
|
||||
"narHash": "sha256-xumPGh1MLymi4RrJmUqZQxO9DYXaqaYD60yPtpKcw4g=",
|
||||
"owner": "mitchellh",
|
||||
"repo": "zig-overlay",
|
||||
"rev": "057830f53f122fefb8ebd151ce717a821eb47394",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "mitchellh",
|
||||
"repo": "zig-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"zls": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_7",
|
||||
"gitignore": "gitignore_2",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"zig-overlay": [
|
||||
"zig-overlay"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731002594,
|
||||
"narHash": "sha256-GMz5G0wlpTrM4U+PXQHsW4+LIw83FX04A+YLWFTaA6E=",
|
||||
"owner": "zigtools",
|
||||
"repo": "zls",
|
||||
"rev": "6144e778307f65c18308bb12fa5a25add91afb27",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "zigtools",
|
||||
"repo": "zls",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
|
2
pkgs/oizys/.gitignore
vendored
2
pkgs/oizys/.gitignore
vendored
|
@ -1,5 +1,5 @@
|
|||
nimbledeps
|
||||
nimble.paths
|
||||
nimble.develop
|
||||
|
||||
bin/
|
||||
oizys.out
|
||||
|
|
|
@ -1,6 +1,3 @@
|
|||
task build, "build oizys":
|
||||
selfExec "c -o:oizys src/oizys.nim"
|
||||
|
||||
# begin Nimble config (version 2)
|
||||
--noNimblePath
|
||||
when withDir(thisDir(), system.fileExists("nimble.paths")):
|
||||
|
|
|
@ -8,7 +8,7 @@ buildNimblePackage {
|
|||
verions = "unstable";
|
||||
src = lib.cleanSource ./.;
|
||||
nativeBuildInputs = [ openssl ];
|
||||
nimbleDepsHash = "sha256-/H/HvnJqpDJcyVJ2rbn7PDSSoJB/TMr9yiIKxtB1O+E=";
|
||||
nimbleDepsHash = "sha256-ZEPzosRwokkvPKbv5nqzATv6IqUhqM2prOU0vUUC80Q=";
|
||||
|
||||
meta = {
|
||||
description = "nix begat oizys";
|
||||
|
|
|
@ -3,12 +3,12 @@
|
|||
"packages": {
|
||||
"hwylterm": {
|
||||
"version": "0.1.0",
|
||||
"vcsRevision": "e8e090c5b76bc555231bda536193df6f92a54db2",
|
||||
"vcsRevision": "65a952e9f0d75659d39f8a3b146753e291ee0a66",
|
||||
"url": "https://github.com/daylinmorgan/hwylterm",
|
||||
"downloadMethod": "git",
|
||||
"dependencies": [],
|
||||
"checksums": {
|
||||
"sha1": "925aad3ce660979de7cdb2f58a31dc7ac693e34d"
|
||||
"sha1": "10894d492bbe1d0ea32ee9bb0686abfcd3b0b0fe"
|
||||
}
|
||||
},
|
||||
"jsony": {
|
||||
|
|
|
@ -13,5 +13,5 @@ bin = @["oizys"]
|
|||
requires "nim >= 2.0.8"
|
||||
requires "jsony"
|
||||
requires "zippy"
|
||||
requires "https://github.com/daylinmorgan/hwylterm#e8e090c"
|
||||
requires "https://github.com/daylinmorgan/hwylterm#65a952e"
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
## nix begat oizys
|
||||
import std/[os, osproc, sequtils, strformat, strutils]
|
||||
import hwylterm, hwylterm/[hwylcli, logging]
|
||||
import hwylterm, hwylterm/[hwylcli]
|
||||
import oizys/[context, github, nix, logging]
|
||||
|
||||
proc checkExes() =
|
||||
|
@ -13,47 +13,49 @@ hwylCli:
|
|||
name "oizys"
|
||||
flags:
|
||||
[global]
|
||||
flake "path/to/flake"
|
||||
flake:
|
||||
T string
|
||||
? "path/to/flake"
|
||||
host:
|
||||
T seq[string]
|
||||
? "host(s) to build"
|
||||
debug:
|
||||
T bool
|
||||
? "enable debug mode"
|
||||
- d
|
||||
resetCache:
|
||||
T bool
|
||||
? "set cache timeout to 0"
|
||||
- r
|
||||
[yes]
|
||||
yes:
|
||||
T bool
|
||||
- y
|
||||
? "skip all confirmation prompts"
|
||||
[minimal]
|
||||
minimal:
|
||||
T bool
|
||||
? "set minimal"
|
||||
- m
|
||||
|
||||
preSub:
|
||||
setupLoggers(debug)
|
||||
updateContext(host, flake, debug, resetCache)
|
||||
|
||||
subcommands:
|
||||
|
||||
--- build
|
||||
[build]
|
||||
... "nix build"
|
||||
flags:
|
||||
^[minimal]
|
||||
run:
|
||||
nixBuild(minimal, args)
|
||||
|
||||
--- cache
|
||||
[cache]
|
||||
... "build and push store paths"
|
||||
flags:
|
||||
name:
|
||||
T string
|
||||
? "name of binary cache"
|
||||
* "oizys"
|
||||
service:
|
||||
T string
|
||||
? "name of cache service"
|
||||
* "attic"
|
||||
jobs:
|
||||
|
@ -64,24 +66,25 @@ hwylCli:
|
|||
run:
|
||||
nixBuildWithCache(name, args, service, jobs)
|
||||
|
||||
--- ci
|
||||
[ci]
|
||||
... "trigger GHA"
|
||||
flags:
|
||||
`ref`:
|
||||
T string
|
||||
? "git ref/branch/tag to trigger workflow on"
|
||||
* "main"
|
||||
run:
|
||||
if args.len == 0: fatalQuit "expected workflow file name"
|
||||
createDispatch(args[0], `ref`)
|
||||
|
||||
--- dry
|
||||
[dry]
|
||||
... "dry run build"
|
||||
flags:
|
||||
^[minimal]
|
||||
run:
|
||||
nixBuildHostDry(minimal, args)
|
||||
|
||||
--- os
|
||||
[os]
|
||||
? "[b]oizys os[/] [i]subcmd[/] [[[faint]flags[/]]"
|
||||
... "nixos-rebuild [italic]subcmd[/]"
|
||||
run:
|
||||
|
@ -94,16 +97,17 @@ hwylCli:
|
|||
)
|
||||
nixosRebuild(subcmd, args[1..^1])
|
||||
|
||||
--- output
|
||||
[output]
|
||||
... "nixos config attr"
|
||||
run:
|
||||
echo nixosConfigAttrs().join(" ")
|
||||
|
||||
--- update
|
||||
[update]
|
||||
... "update and run nixos-rebuild"
|
||||
flags:
|
||||
^[yes]
|
||||
preview:
|
||||
- p
|
||||
T bool
|
||||
? "show preview and exit"
|
||||
run:
|
||||
|
@ -116,4 +120,4 @@ hwylCli:
|
|||
if yes or confirm("Proceed with system update?"):
|
||||
updateRepo()
|
||||
nixosRebuild("switch")
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue