diff --git a/.github/workflows/build-machines-and-homes.yml b/.github/workflows/build-machines-and-homes.yml index 43ea5bf..1900b0e 100644 --- a/.github/workflows/build-machines-and-homes.yml +++ b/.github/workflows/build-machines-and-homes.yml @@ -3,7 +3,6 @@ on: workflow_dispatch: push: pull_request: - env: ATTIC_TOKEN: ${{ secrets.ATTIC_TOKEN }} NIX_CONFIG: | @@ -14,7 +13,6 @@ env: accept-flake-config = true system-features = nixos-test benchmark big-parallel kvm TERM: ansi - jobs: build-machines: strategy: @@ -38,20 +36,16 @@ jobs: remove-codeql: 'true' remove-docker-images: 'true' build-mount-path: /nix - - name: Install Nix uses: cachix/install-nix-action@v30 - - name: Sync repository uses: actions/checkout@v4 with: persist-credentials: false - - name: setup attic run: | nix profile install github:zhaofengli/attic attic login cy7 https://cache.cy7.sh "$ATTIC_TOKEN" - - name: build run: | package=".#nixosConfigurations."${{ matrix.machine }}".config.system.build.toplevel" diff --git a/flake.lock b/flake.lock index a6ee1bb..ddda4b4 100644 --- a/flake.lock +++ b/flake.lock @@ -945,6 +945,22 @@ "type": "github" } }, + "pixelflasher": { + "locked": { + "lastModified": 1741302870, + "narHash": "sha256-7AywZ1b3PaqolAZ0vQmddD6Br4o0a7ucdtE0/W3rnaM=", + "owner": "cything", + "repo": "nixpkgs", + "rev": "5ef8b274bb7f939104295a22cec3382268ed73cc", + "type": "github" + }, + "original": { + "owner": "cything", + "ref": "pixelflasher", + "repo": "nixpkgs", + "type": "github" + } + }, "pre-commit-hooks-nix": { "inputs": { "flake-compat": [ @@ -1008,6 +1024,7 @@ "nixpkgs-stable": "nixpkgs-stable_2", "nixvim": "nixvim", "nvim-github-theme": "nvim-github-theme", + "pixelflasher": "pixelflasher", "rust-overlay": "rust-overlay", "sops-nix": "sops-nix", "treefmt": "treefmt", diff --git a/flake.nix b/flake.nix index b5fccc8..54a1b90 100644 --- a/flake.nix +++ b/flake.nix @@ -71,6 +71,7 @@ url = "github:nix-community/nix-index-database"; inputs.nixpkgs.follows = "nixpkgs"; }; + pixelflasher.url = "github:cything/nixpkgs/pixelflasher"; attic = { url = "github:zhaofengli/attic"; inputs = { @@ -133,6 +134,7 @@ imports = [ inputs.treefmt.flakeModule ]; + debug = true; systems = [ "x86_64-linux" ]; @@ -145,14 +147,11 @@ treefmt = { projectRootFile = "flake.nix"; programs.nixfmt.enable = true; + programs.stylua.enable = true; + programs.yamlfmt.enable = true; programs.typos.enable = true; programs.shellcheck.enable = true; - programs.yamlfmt = { - enable = true; - settings.retain_line_breaks = true; - }; - settings.global.excludes = [ "secrets/*" "**/*.png" # tries to format a png file diff --git a/home/codium.nix b/home/codium.nix index 00724b6..28c3a6e 100644 --- a/home/codium.nix +++ b/home/codium.nix @@ -1,4 +1,4 @@ -{ pkgs, lib, ... }: +{ pkgs, ... }: { programs.vscode = { enable = true; @@ -23,12 +23,10 @@ tamasfe.even-better-toml golang.go ms-python.python - christian-kohler.path-intellisense ]; userSettings = let vimCommonKeyBindings = [ - # nice emacs bindings { "before" = [ "C-a" ]; "commands" = [ "cursorHome" ]; @@ -37,19 +35,6 @@ "before" = [ "C-e" ]; "commands" = [ "cursorEnd" ]; } - { - "before" = [ "C-b" ]; - "commands" = [ "cursorLeft" ]; - } - { - "before" = [ "C-f" ]; - "commands" = [ "cursorRight" ]; - } - # ctrl+h to turn off search highlighting - { - "before" = [ "C-h" ]; - "commands" = [ ":nohl" ]; - } ]; in { @@ -89,7 +74,7 @@ "markdown-preview-enhanced.previewTheme" = "github-dark.css"; "nix.enableLanguageServer" = true; - "nix.serverPath" = "${lib.getExe pkgs.nil}"; + "nix.serverPath" = "nil"; "bookmarks.saveBookmarksInProject" = true; "cSpell.enabledFileTypes" = { @@ -99,15 +84,6 @@ # vim stuff "vim.leader" = ","; - "extensions.experimental.affinity" = { - "vscodevim.vim" = 1; - }; - "vim.sneak" = true; - "vim.sneakUseIgnorecaseAndSmartcase" = true; - "vim.enableNeovim" = true; - "vim.hlsearch" = true; - "vim.easymotion" = true; - "editor.lineNumbers" = "relative"; "vim.normalModeKeyBindings" = vimCommonKeyBindings ++ [ { "before" = [ ";" ]; @@ -142,13 +118,6 @@ ]; "commands" = [ "workbench.action.toggleSidebarVisibility" ]; } - { - "before" = [ - "" - "s" - ]; - "commands" = [ "workbench.action.toggleSidebarVisibility" ]; - } { "before" = [ "" @@ -222,33 +191,10 @@ "commands" = [ "editor.action.outdentLines" ]; } ]; + "extensions.experimental.affinity" = { + "vscodevim.vim" = 1; + }; }; - keybindings = [ - # repeat these vim bindings here cause otherwise they get overridden by vscode - { - "key" = "ctrl+b"; - "when" = "inputFocus"; - "command" = "cursorLeft"; - } - { - "key" = "ctrl+f"; - "when" = "inputFocus"; - "command" = "cursorRight"; - } - # clear default bindings that conflict - { - "key" = "ctrl+f"; - "command" = "-actions.find"; - } - { - "key" = "ctrl+b"; - "command" = "-workbench.action.toggleSidebarVisibility"; - } - { - "key" = "ctrl+w"; - "command" = "-workbench.action.closeActiveEditor"; - } - ]; }; }; } diff --git a/home/yt/ytnix.nix b/home/yt/ytnix.nix index 4e431b2..6ce06ec 100644 --- a/home/yt/ytnix.nix +++ b/home/yt/ytnix.nix @@ -76,6 +76,7 @@ )) p7zip qbittorrent + nil android-tools frida-tools mitmproxy diff --git a/overlay/attic/prefetch-8-chunks.patch b/overlay/attic/prefetch-8-chunks.patch index 3d6134f..eafc514 100644 --- a/overlay/attic/prefetch-8-chunks.patch +++ b/overlay/attic/prefetch-8-chunks.patch @@ -11,4 +11,13 @@ index 02e4857..b522154 100644 Download::Url(url) => Ok(Redirect::temporary(&url).into_response()), Download::AsyncRead(stream) => { let stream = ReaderStream::new(stream).map_err(|e| { +@@ -262,7 +262,7 @@ async fn get_nar( + + // TODO: Make num_prefetch configurable + // The ideal size depends on the average chunk size +- let merged = merge_chunks(chunks, streamer, storage, 2).map_err(|e| { ++ let merged = merge_chunks(chunks, streamer, storage, 8).map_err(|e| { + tracing::error!(%e, "Stream error"); + e + }); diff --git a/overlay/default.nix b/overlay/default.nix index 71bee1e..d8780e2 100644 --- a/overlay/default.nix +++ b/overlay/default.nix @@ -16,6 +16,7 @@ in in { conduwuit = pkgFrom inputs.conduwuit "default"; + pixelflasher = nixpkgsFrom inputs.pixelflasher "pixelflasher"; attic-server = pkgFrom inputs.attic "attic-server"; attic = pkgFrom inputs.attic "attic"; garage = (