1
0
Fork 0
mirror of https://github.com/ryanccn/flake.git synced 2025-12-06 08:10:43 +01:00

chore: update

This commit is contained in:
Ryan Cao 2025-09-27 17:59:32 +08:00
parent 26815c337f
commit 6c6f264768
Signed by: ryanccn
GPG key ID: F605AB4AF937D5D0
19 changed files with 187 additions and 103 deletions

View file

@ -15,25 +15,28 @@ permissions:
jobs:
build:
name: ${{ matrix.label }}
strategy:
matrix:
label:
- caladan
include:
- label: caladan
attr: darwinConfigurations.caladan.config.system.build.toplevel
runner: macos-14
runner: macos-latest
runs-on: ${{ matrix.runner }}
steps:
- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # ratchet:actions/checkout@v5
with:
persist-credentials: false
- name: Install Nix
uses: cachix/install-nix-action@fc6e360bedc9ee72d75e701397f0bb30dce77568 # ratchet:cachix/install-nix-action@v31
run: .github/workflows/install-nix.sh
env:
GITHUB_TOKEN: ${{ github.token }}
- name: Build
run: nix build -L --show-trace .#${{ matrix.attr }}
run: nix build -L --show-trace ".#$NIX_BUILD_ATTR"
env:
NIX_BUILD_ATTR: ${{ matrix.attr }}

View file

@ -19,12 +19,14 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # ratchet:actions/checkout@v5
with:
persist-credentials: false
- name: Install Nix
uses: cachix/install-nix-action@fc6e360bedc9ee72d75e701397f0bb30dce77568 # ratchet:cachix/install-nix-action@v31
run: .github/workflows/install-nix.sh
env:
GITHUB_TOKEN: ${{ github.token }}
- name: Check
run: nix build --print-build-logs '.#checks.x86_64-linux.nixfmt'
@ -34,12 +36,14 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # ratchet:actions/checkout@v4
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # ratchet:actions/checkout@v5
with:
persist-credentials: false
- name: Install Nix
uses: cachix/install-nix-action@fc6e360bedc9ee72d75e701397f0bb30dce77568 # ratchet:cachix/install-nix-action@v31
run: .github/workflows/install-nix.sh
env:
GITHUB_TOKEN: ${{ github.token }}
- name: Check
run: nix build --print-build-logs '.#checks.x86_64-linux.reuse'

86
.github/workflows/install-nix.sh vendored Executable file
View file

@ -0,0 +1,86 @@
#!/usr/bin/env bash
# SPDX-FileCopyrightText: 2025 Ryan Cao <hello@ryanccn.dev>
#
# SPDX-License-Identifier: Apache-2.0
# Modified from https://github.com/cachix/install-nix-action/blob/9280e7aca88deada44c930f1e2c78e21c3ae3edd/install-nix.sh
set -euo pipefail
if nix_path="$(type -p nix)" ; then
echo "Aborting: Nix is already installed at ${nix_path}"
exit
fi
if [[ ($OSTYPE =~ linux) ]]; then
enable_kvm() {
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-install-nix-action-kvm.rules
sudo udevadm control --reload-rules && sudo udevadm trigger --name-match=kvm
}
echo '::group::Enabling KVM support'
enable_kvm && echo 'Enabled KVM' || echo 'KVM is not available'
echo '::endgroup::'
fi
echo "::group::Installing Nix"
workdir=$(mktemp -d)
trap 'rm -rf "$workdir"' EXIT
extra_conf=(
"experimental-features = nix-command flakes"
"show-trace = true"
"max-jobs = auto"
"trusted-users = root ${USER:-}"
)
if [[ -n "${GITHUB_TOKEN:-}" && "${GITHUB_SERVER_URL:-}" == "https://github.com" ]]; then
echo "::debug::Using the default GITHUB_TOKEN for github.com"
extra_conf+=("access-tokens = github.com=$GITHUB_TOKEN")
else
echo "::debug::Continuing without a GitHub access token"
fi
# Nix installer flags
installer_args=(install)
case "$OSTYPE" in
linux*) installer_args+=(linux) ;;
darwin*) installer_args+=(macos) ;;
*) echo "unknown: $OSTYPE" ;;
esac
if [[ ! ($OSTYPE =~ darwin || -e /run/systemd/system) ]]; then
installer_args+=(--init none)
fi
installer_args+=(
--no-confirm
--extra-conf "$(printf $'%s\n' "${extra_conf[@]}")"
)
echo "installer args: ${installer_args[*]}"
# There is --retry-on-errors, but only newer curl versions support that
curl_retries=5
while ! curl -o "$workdir/install" --proto '=https' --fail --tlsv1.2 -sSf -L https://artifacts.nixos.org/experimental-installer
do
sleep 1
((curl_retries--))
if [[ $curl_retries -le 0 ]]; then
echo "curl retries failed" >&2
exit 1
fi
done
sh "$workdir/install" "${installer_args[@]}"
{
echo "/nix/var/nix/profiles/default/bin"
echo "${XDG_STATE_HOME:-"$HOME/.local/state"}/nix/profile"
echo "$HOME/.nix-profile/bin"
} >> "$GITHUB_PATH"
# Close the log message group which was opened above
echo "::endgroup::"

97
flake.lock generated
View file

@ -7,11 +7,11 @@
]
},
"locked": {
"lastModified": 1745054840,
"narHash": "sha256-mLtmmYsDN2Yn1Q05ZxPGPsNGlfZWFFDGj/EShHv9Vpw=",
"lastModified": 1758461534,
"narHash": "sha256-r4UiUzW1SQTuDzc7bZ9pNPe1C5tHM8aL9keQbw0Xb2Y=",
"owner": "ryanccn",
"repo": "am",
"rev": "36d349c9976ea264c6bdea28847d248d09af977c",
"rev": "9509d104c4edf19f193b914bcbb1037148402f25",
"type": "github"
},
"original": {
@ -22,16 +22,19 @@
},
"arkencrab": {
"inputs": {
"ferrix": [
"ferrix"
],
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1749293437,
"narHash": "sha256-yeuIxXfkUnkGBxkXIiRfCjW7XiiWxWV+PZoCkCRyu8c=",
"lastModified": 1758553728,
"narHash": "sha256-/2UTfnfJJfapFxM5j+9VJBmqOk5Jd9JF1hYi5psOnXA=",
"owner": "ryanccn",
"repo": "arkencrab",
"rev": "aaa30d257d40ecace18693369cab554c61a2841b",
"rev": "6d0d2333cf84ff1a0a71ae951bc36960a53e6852",
"type": "github"
},
"original": {
@ -47,11 +50,11 @@
]
},
"locked": {
"lastModified": 1755247639,
"narHash": "sha256-YBjSqGgNAejwIIqUv+NTYpm+peXLro79qNBi0SF1JqM=",
"lastModified": 1758956381,
"narHash": "sha256-ROUw5E8CibG3jEy6oHjrkF6/P60eiaUJmc2s2ecC/LM=",
"owner": "catppuccin",
"repo": "nix",
"rev": "bd14b47481c996e2a5d5e5704d55092edf18e892",
"rev": "02dee881c3e644e2b561f407742f1fd927c40b83",
"type": "github"
},
"original": {
@ -60,6 +63,21 @@
"type": "github"
}
},
"ferrix": {
"locked": {
"lastModified": 1758552051,
"narHash": "sha256-vDLXTfMEvV+eZKMguYqQ+UnoB12AWHPydwKdWrYTmU4=",
"owner": "ryanccn",
"repo": "ferrix",
"rev": "f2ca4fe93df43f1a73008dbdc65e391b104fc2bd",
"type": "github"
},
"original": {
"owner": "ryanccn",
"repo": "ferrix",
"type": "github"
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": [
@ -67,11 +85,11 @@
]
},
"locked": {
"lastModified": 1754487366,
"narHash": "sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8=",
"lastModified": 1756770412,
"narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "af66ad14b28a127c5c0f3bbb298218fc63528a18",
"rev": "4524271976b625a4a605beefd893f270620fd751",
"type": "github"
},
"original": {
@ -87,11 +105,11 @@
]
},
"locked": {
"lastModified": 1755229570,
"narHash": "sha256-soZegto0xXzG2zYlu/zjknDHv0Z7tRS5EQs+Z/VRTBg=",
"lastModified": 1758928860,
"narHash": "sha256-ZqaRdd+KoR54dNJPtd7UX4O0X+02YItnTpQVu28lSVI=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "11626a4383b458f8dc5ea3237eaa04e8ab1912f3",
"rev": "bc2afee55bc5d3b825287829d6592b9cc1405aad",
"type": "github"
},
"original": {
@ -102,16 +120,19 @@
},
"moldau": {
"inputs": {
"ferrix": [
"ferrix"
],
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1755246866,
"narHash": "sha256-GFP/HgnF3DVIFj9ijRnlkLBONd5hcojAjBnPn0o1qBI=",
"lastModified": 1758555422,
"narHash": "sha256-TyOOpRDDrsS/EUhlok9G0P/bTP7l4ftVDaTFIFZi7G4=",
"owner": "ryanccn",
"repo": "moldau",
"rev": "a1c05ecb8f7bebae83261759e376e80f4ca1043d",
"rev": "f0c6f94073928e41e7b836105eac50f08a12568c",
"type": "github"
},
"original": {
@ -127,11 +148,11 @@
]
},
"locked": {
"lastModified": 1747527940,
"narHash": "sha256-q3pAB5UFef7yzyIhShzucb1cYq2j8ga43HxtpfX3Bd8=",
"lastModified": 1758551110,
"narHash": "sha256-5caspBPoS2tuUb3Hj11P1+25tC1b3cXHA4g/HkeCccg=",
"owner": "ryanccn",
"repo": "morlana",
"rev": "d2667a9833ad41f9df2f5ac6a058aeb9c773128e",
"rev": "26edffc23df6e63802c5de4edee3f1681d699686",
"type": "github"
},
"original": {
@ -147,11 +168,11 @@
]
},
"locked": {
"lastModified": 1751313918,
"narHash": "sha256-HsJM3XLa43WpG+665aGEh8iS8AfEwOIQWk3Mke3e7nk=",
"lastModified": 1758805352,
"narHash": "sha256-BHdc43Lkayd+72W/NXRKHzX5AZ+28F3xaUs3a88/Uew=",
"owner": "nix-darwin",
"repo": "nix-darwin",
"rev": "e04a388232d9a6ba56967ce5b53a8a6f713cdfcf",
"rev": "c48e963a5558eb1c3827d59d21c5193622a1477c",
"type": "github"
},
"original": {
@ -167,11 +188,11 @@
]
},
"locked": {
"lastModified": 1754800038,
"narHash": "sha256-UbLO8/0pVBXLJuyRizYOJigtzQAj8Z2bTnbKSec/wN0=",
"lastModified": 1758427679,
"narHash": "sha256-xwjWRJTKDCjQ0iwfh7WhDhgcS0Wt3d1Yscg83mKBCn4=",
"owner": "nix-community",
"repo": "nix-index-database",
"rev": "b65f8d80656f9fcbd1fecc4b7f0730f468333142",
"rev": "fd2569ca2ef7d69f244cd9ffcb66a0540772ff85",
"type": "github"
},
"original": {
@ -182,11 +203,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1755175540,
"narHash": "sha256-V0j2S1r25QnbqBLzN2Rg/dKKil789bI3P3id7bDPVc4=",
"lastModified": 1758763312,
"narHash": "sha256-puBMviZhYlqOdUUgEmMVJpXqC/ToEqSvkyZ30qQ09xM=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a595dde4d0d31606e19dcec73db02279db59d201",
"rev": "e57b3b16ad8758fd681511a078f35c416a8cc939",
"type": "github"
},
"original": {
@ -241,6 +262,7 @@
"am": "am",
"arkencrab": "arkencrab",
"catppuccin": "catppuccin",
"ferrix": "ferrix",
"flake-parts": "flake-parts",
"home-manager": "home-manager",
"moldau": "moldau",
@ -261,11 +283,11 @@
]
},
"locked": {
"lastModified": 1755225702,
"narHash": "sha256-i7Rgs943NqX0RgQW0/l1coi8eWBj3XhxVggMpjjzTsk=",
"lastModified": 1758940228,
"narHash": "sha256-sTS04L9LKqzP1oiVXYDwcMzfFSF0DnSJQFzZBpEgLFE=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "4abaeba6b176979be0da0195b9e4ce86bc501ae4",
"rev": "5bfedf3fbbf5caf8e39f7fcd62238f54d82aa1e2",
"type": "github"
},
"original": {
@ -276,16 +298,19 @@
},
"spdx-gen": {
"inputs": {
"ferrix": [
"ferrix"
],
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1743340768,
"narHash": "sha256-DRMvB5BmnbfbVvOv2HaQwqeVxeXdZrXH8MufH1MVmg0=",
"lastModified": 1758552530,
"narHash": "sha256-6TZCSIK1ds8PuhSqAjM7/N4tRs1P4g276g2beYRArd8=",
"owner": "ryanccn",
"repo": "spdx-gen",
"rev": "a97a52ac35462d1414827c3692ce9107241dbd13",
"rev": "ca5a833641f479ca4f9a8df2692c77fca55aa037",
"type": "github"
},
"original": {

View file

@ -73,21 +73,28 @@
spdx-gen = {
url = "github:ryanccn/spdx-gen";
inputs.nixpkgs.follows = "nixpkgs";
inputs.ferrix.follows = "ferrix";
};
moldau = {
url = "github:ryanccn/moldau";
inputs.nixpkgs.follows = "nixpkgs";
inputs.ferrix.follows = "ferrix";
};
arkencrab = {
url = "github:ryanccn/arkencrab";
inputs.nixpkgs.follows = "nixpkgs";
inputs.ferrix.follows = "ferrix";
};
rust-overlay = {
url = "github:oxalica/rust-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
ferrix = {
url = "github:ryanccn/ferrix";
};
};
}

View file

@ -1,22 +0,0 @@
# SPDX-FileCopyrightText: 2025 Ryan Cao <hello@ryanccn.dev>
#
# SPDX-License-Identifier: Apache-2.0
switch *args:
morlana switch -- {{args}}
build *args:
morlana build -- {{args}}
wipe-history:
sudo -H nix profile wipe-history --profile "/nix/var/nix/profiles/default"
sudo -H nix profile wipe-history --profile "/nix/var/nix/profiles/system"
sudo -H nix profile wipe-history --profile "/nix/var/nix/profiles/per-user/root/profile"
nix profile wipe-history --profile "${XDG_STATE_HOME-$HOME/.local/state}/nix/profiles/profile"
nix profile wipe-history --profile "${XDG_STATE_HOME-$HOME/.local/state}/nix/profiles/home-manager"
update:
nix flake update
gc:
nix store gc

View file

@ -41,5 +41,6 @@
};
system.primaryUser = "ryan";
system.configurationRevision = inputs.self.rev or inputs.self.dirtyRev or null;
system.stateVersion = 6;
}

View file

@ -2,10 +2,7 @@
#
# SPDX-License-Identifier: Apache-2.0
{
pkgs,
...
}:
{ pkgs, ... }:
{
nix.package = pkgs.nixVersions.latest;

View file

@ -17,7 +17,6 @@ in
statix
deadnix
nix-your-shell
nix-output-monitor
nix-melt
@ -43,7 +42,6 @@ in
ripgrep
tokei
vhs
vivid
watchexec
xh

View file

@ -15,7 +15,7 @@ let
};
settings = {
theme = "catppuccin-${config.catppuccin.flavor}";
theme = "Catppuccin ${lib.toSentenceCase config.catppuccin.flavor}";
window-colorspace = "display-p3";
font-family = "Ryan Term";

View file

@ -127,7 +127,7 @@ in
# "editor.minimap.renderCharacters" = false;
"workbench.editor.highlightModifiedTabs" = true;
"workbench.editor.empty.hint" = "hidden";
"chat.commandCenter.enabled" = false;
"chat.disableAIFeatures" = true;
"editor.inlineSuggest.enabled" = true;
"editor.tabSize" = 2;

View file

@ -8,6 +8,7 @@
accent = "sapphire";
bat.enable = true;
eza.enable = true;
fish.enable = true;
fzf.enable = true;
glamour.enable = true;

View file

@ -2,10 +2,7 @@
#
# SPDX-License-Identifier: Apache-2.0
{
inputs,
...
}:
{ inputs, ... }:
{
programs.home-manager.enable = true;

View file

@ -2,11 +2,7 @@
#
# SPDX-License-Identifier: Apache-2.0
{
pkgs,
inputs,
...
}:
{ pkgs, inputs, ... }:
let
pkgs' = inputs.self.packages.${pkgs.stdenvNoCC.hostPlatform.system};
in

View file

@ -3,7 +3,6 @@
# SPDX-License-Identifier: Apache-2.0
set -gx SSH_AUTH_SOCK "$HOME/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock"
set -gx LS_COLORS "$(vivid generate catppuccin-macchiato)"
/opt/homebrew/bin/brew shellenv | source

View file

@ -3,8 +3,6 @@
# SPDX-License-Identifier: Apache-2.0
if status is-interactive
nix-your-shell fish | source
if test -d "$(brew --prefix)/share/fish/completions"
set -p fish_complete_path "$(brew --prefix)/share/fish/completions"
end

View file

@ -2,14 +2,16 @@
#
# SPDX-License-Identifier: Apache-2.0
{ config, ... }:
{
programs.go = {
enable = true;
goPath = ".local/share/go";
};
home.sessionVariables = {
GOTOOLCHAIN = "local";
GOPROXY = "direct";
env = {
GOPATH = "${config.xdg.dataHome}/go";
GOTOOLCHAIN = "local";
GOPROXY = "direct";
};
telemetry.mode = "off";
};
}

View file

@ -2,11 +2,7 @@
#
# SPDX-License-Identifier: Apache-2.0
{
inputs,
pkgs,
...
}:
{ inputs, pkgs, ... }:
{
programs.helix = {
enable = true;

View file

@ -2,11 +2,7 @@
#
# SPDX-License-Identifier: Apache-2.0
{
pkgs,
inputs,
...
}:
{ inputs, pkgs, ... }:
let
rust-bin = inputs.rust-overlay.lib.mkRustBin { } pkgs;
in