Commit Graph

26 Commits

Author SHA1 Message Date
R. Ryantm
e2c3d9af6f rustic: 0.11.2 -> 0.11.3 2026-06-07 00:34:47 +00:00
Philip White
ba4c5b312c rustic: switch fuse to fuse3
This addresses issue #526161.

Tested on Linux x86_64 with `rustic mount` command, which is the one that
uses fuse.
2026-05-30 17:29:16 -07:00
R. Ryantm
5563853eb5 rustic: 0.11.1 -> 0.11.2 2026-04-08 13:07:54 +00:00
Norbert Melzer
ab329c03ba rustic: build for all platforms (#496790) 2026-03-15 12:01:46 +00:00
Philip White
b9d479d49f rustic: enable mount feature on Linux (resolve #408706) 2026-03-06 09:34:35 -08:00
Philip White
eadbd1515e rustic: build for all platforms 2026-03-04 21:43:38 -08:00
Philip White
273a0d1f72 rustic: 0.11.0 -> 0.11.1 2026-03-04 21:12:16 -08:00
Philip White
5a747bdfd9 rustic: 0.10.3 -> 0.11.0 2026-02-21 20:52:10 -08:00
quantenzitrone
d26a1a9e5e various: switch buildRustPackage packages to use finalAttrs
this shouldn't create any rebuilds

the following script was used to generate this:
```fish
#!/usr/bin/env fish

# nix shell .#nixfmt nixpkgs#{nixf-diagnose,ripgrep,sd}

set base (git rev-parse HEAD)

set scope pkgs/by-name
set builder buildRustPackage

set files (rg --files-with-matches -F "$builder rec {" $scope | sort -u)

for file in $files
    echo $file
    sd -F "$builder rec {" "$builder (finalAttrs: {" $file
    # version
    sd -F 'version}' 'finalAttrs.version}' $file
    sd -F '${version' '${finalAttrs.version' $file
    sd -F '= version' '= finalAttrs.version' $file
    sd -F 'inherit version;' 'inherit (finalAttrs) version;' $file
    sd -F ' + version;' ' + finalAttrs.version;' $file
    sd 'replaceStrings (.*) version' 'replaceStrings $1 finalAttrs.version' $file
    sd -F 'splitVersion version' 'splitVersion finalAttrs.version' $file
    sd -F 'versionAtLeast version' 'versionAtLeast finalAttrs.version' $file
    sd 'versions\.([a-z]+) version' 'versions.$1 finalAttrs.version' $file
    # src
    sd -F 'src}' 'finalAttrs.src}' $file
    sd -F '${src' '${finalAttrs.src' $file
    sd -F '= src' '= finalAttrs.src' $file
    sd -F 'inherit src;' 'inherit (finalAttrs) src;' $file
    sd -F 'inherit (src' 'inherit (finalAttrs.src' $file
    # meta
    sd -F '${meta' '${finalAttrs.meta' $file
    sd -F '= meta' '= finalAttrs.meta' $file
    sd -F 'inherit (meta' 'inherit (finalAttrs.meta' $file
    # other
    sd -F 'inherit version src;' 'inherit (finalAttrs) version src;' $file
    sd -F 'inherit src version;' 'inherit (finalAttrs) src version;' $file
    sd -F 'makeLibraryPath buildInputs' 'makeLibraryPath finalAttrs.buildInputs' $file
    sd -F 'buildInputs}' 'finalAttrs.buildInputs}' $file
    sd -F 'desktopItem}' 'finalAttrs.desktopItem}' $file
    sd -F 'runtimeLibs}' 'finalAttrs.runtimeLibs}' $file
    sd -F 'libPath}' 'finalAttrs.libPath}' $file
    sd -F 'runtimeDependencies}' 'finalAttrs.runtimeDependencies}' $file
    sd -F 'nativeRuntimeInputs}' 'finalAttrs.nativeRuntimeInputs}' $file
    sd -F '(!doCheck)' '(!finalAttrs.doCheck)' $file
    sd -F 'optional doCheck' 'optional finalAttrs.doCheck' $file
    sd -F 'optionals doCheck' 'optionals finalAttrs.doCheck' $file
    sd -F '++ runtimeDependencies' '++ finalAttrs.runtimeDependencies' $file
    # pname (restored afterwards)
    sd -F 'pname}' 'finalAttrs.pname}' $file
    sd -F '${pname' '${finalAttrs.pname' $file
    sd -F '= pname' '= finalAttrs.pname' $file
    # close finalAttrs lambda
    echo ')' >>$file
    # catch some errors early
    if ! nixfmt $file
        git restore $file
        continue
    end
    if ! nixf-diagnose -i sema-primop-overridden $file
        git restore $file
        continue
    end
end

set torestore (rg -F .finalAttrs --files-with-matches $scope)
if test (count $torestore) -gt 0
    git restore $torestore
end
set torestore (rg -F finalAttrs.pname --files-with-matches $scope)
if test (count $torestore) -gt 0
    git restore $torestore
end

# commit for faster eval times
git add pkgs
git commit --no-gpg-sign -m temp
set torestore

for file in $files
    # file hasn't changed
    if git diff --quiet $base $file
        continue
    end
    # try to eval the package to definitely catch all errors
    echo $file
    set pname (string split / $file -f 4)
    if ! nix eval .#$pname
        set torestore $torestore $file
    end
end

# restore files that don't eval
git reset --soft $base
git restore --staged .
if test (count $torestore) -gt 0
    git restore $torestore
end
```

after that some manual cleanup was done:
- restoring files that cause changes in the number of lines
- restoring files that cause rebuilds
- restoring files that cause merge conflicts with staging
2026-02-07 09:53:17 +01:00
R. Ryantm
aaa668abd3 rustic: 0.10.2 -> 0.10.3 2026-01-01 16:24:38 +00:00
R. Ryantm
10a3493e53 rustic: 0.10.1 -> 0.10.2 2025-11-17 11:39:50 +00:00
R. Ryantm
e911bbc6f4 rustic: 0.10.0 -> 0.10.1 2025-11-10 17:58:44 +00:00
R. Ryantm
abc3b5a12a rustic: 0.9.5 -> 0.10.0 2025-09-15 00:00:33 +00:00
Robert Schütz
8e2aa7dae0 rustic: simplify shell completion installation 2025-06-06 13:32:55 -07:00
Ihar Hrachyshka
dd0f03a56c treewide: remove usage of deprecated apple_sdk framework stubs
They are not doing anything right now. This is in preparation for their
complete removal from the tree.

Note: several changes that affect the derivation inputs (e.g. removal of
references to stub paths in build instructions) were left out. They will
be cleaned up the next iteration and will require special care.

Note: this PR is a result of a mix of ugly regex (not AST) based
automation and some manual labor. For reference, the regex automation
part was hacked in: https://github.com/booxter/nix-clean-apple_sdk

Signed-off-by: Ihar Hrachyshka <ihar.hrachyshka@gmail.com>
2025-04-19 20:28:20 -04:00
Alyssa Ross
63bff8c132 treewide: migrate to fetchCargoVendor, batch 1
Cargo 1.84.0 seems to have changed the output format of cargo vendor
again, once again invalidating fetchCargoTarball FOD hashes.  It's
time to fix this once and for all, switching across the board to
fetchCargoVendor, which is not dependent on cargo vendor's output
format.

It should be possible to reproduce this diff.  To do so, get the list
of files changed by this commit, e.g. with git diff --name-only, then
run the following two commands, each with that list of files as their
standard input:

	xargs sed -i 's/^\(. *\)\(cargoHash\)\b/\1useFetchCargoVendor = true;\n\1cargoHash/'
	cut -d / -f 4 | xargs -n 1 nix-update --version=skip

This will take a long time.  It might be possible to parallelize it
using xargs' -P option.  I haven't tested it.
2025-01-23 11:46:43 +01:00
Peder Bergebakken Sundt
0cd04d3036 treewide: migrate fetchgit rev = "refs/tags/..." to tag 2025-01-04 00:19:17 +01:00
R. Ryantm
a61c5e4851 rustic: 0.9.4 -> 0.9.5 2024-12-06 21:12:19 +00:00
Noa Aarts
77522b3c10 rustic: 0.9.3 -> 0.9.4 2024-10-25 00:40:35 +02:00
Philip White
338743fe34 rustic: 0.9.1 -> 0.9.3 2024-10-19 15:00:46 -07:00
David Knaack
81f3c68b92 rustic: 0.8.1 -> 0.9.1 2024-10-04 22:25:08 +02:00
Artturin
e0464e4788 treewide: replace stdenv.is with stdenv.hostPlatform.is
In preparation for the deprecation of `stdenv.isX`.

These shorthands are not conducive to cross-compilation because they
hide the platforms.

Darwin might get cross-compilation for which the continued usage of `stdenv.isDarwin` will get in the way

One example of why this is bad and especially affects compiler packages
https://www.github.com/NixOS/nixpkgs/pull/343059

There are too many files to go through manually but a treewide should
get users thinking when they see a `hostPlatform.isX` in a place where it
doesn't make sense.

```
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv.is" "stdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv'.is" "stdenv'.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "clangStdenv.is" "clangStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "gccStdenv.is" "gccStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenvNoCC.is" "stdenvNoCC.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "inherit (stdenv) is" "inherit (stdenv.hostPlatform) is"
fd --type f "\.nix" | xargs sd --fixed-strings "buildStdenv.is" "buildStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "effectiveStdenv.is" "effectiveStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "originalStdenv.is" "originalStdenv.hostPlatform.is"
```
2024-09-25 00:04:37 +03:00
R. Ryantm
94909c1166 rustic: 0.8.0 -> 0.8.1 2024-09-10 13:08:26 +00:00
Norbert Melzer
d2398e062e rustic: 0.7.0-unstable-2024-08-10 -> 0.8.0 2024-08-26 21:00:35 +02:00
Norbert Melzer
8d6e39e49d rustic: 0.7.0 -> 0.7.0-unstable-2024-08-10 2024-08-15 07:48:45 +02:00
Alyssa Ross
c6711b873c rustic: rename from rustic-rs
As far as I can tell, the name of the software is "rustic".  Every
other distro calls it "rustic". [1]  The crate is presumably called
"rustic-rs" because "rustic" is already taken on crates.io, which is
not a problem in Nixpkgs.

I've added "rustic-rs" as an alias, so the old name will continue
working.

[1]: https://repology.org/project/rustic/versions
2024-08-08 20:39:39 +02:00