Skip to content

Releases

Release v0.1.9-beta

Choose a tag to compare

@github-actions github-actions released this 14 Nov 19:39

What's Changed

Full Changelog: v0.1.8-beta.1...v0.1.9-beta

A breaking change, we're renaming the crate from tapes-v2 to tapes-dotfiles and since the crates registry is immutable, we have to make a new crate and drop the old one

this is the old abandoned crate
https://crates.io/crates/tapes-v2

and this is the new one
https://crates.io/crates/tapes-dotfiles

The proper renaming in readme has been done and a caution has been added in the older one
This change should only affect people who use binstall or install

A new repo, https://github.com/futurekismo-oss/featured-tapes contains ready made tapes, they contain scripts and tape.toml configured to work with tapes with a single install, you can install a packaged tape from the repo with the featured command. e.g caelestia, nebula or end-4

tapes featured caelestia
tapes featured nebula
tapes featured end-4 --name ii

Release v0.1.8-beta.1

Choose a tag to compare

@github-actions github-actions released this 11 Nov 19:12

Full Changelog: v0.1.8-beta...v0.1.8-beta.1

Minimal changes to the logger

  • No more targets list in the logs, it was long and annoying
  • The logger has a better cleanup
  • the install scripts now deletes the previous log file in order to ensure pristine state

Release v0.1.8-beta

Choose a tag to compare

@github-actions github-actions released this 10 Nov 20:13

What's Changed

Full Changelog: v0.1.7-beta...v0.1.8-beta

Pretty clear what changed from the release notes but i'll write it again

  • Tapes has a few tests now, cause we wanna be reliable software
  • The tapes license is now GPL-3.0. I think its a better choice for the future of tapes
  • We have an FAQ section now, so less questions hopefully, but the team will happily answer an uncertainty you have

Release v0.1.7-beta

Choose a tag to compare

@github-actions github-actions released this 06 Nov 16:13

What's Changed

  • fix: update legacy tapes-v2 strings and harden install script by @amitxd75 in #18
  • feat(install): rework install hooks, add git shorthands, and improve clone speeds (#13) by @amitxd75 in #19
  • feat/global config by @amitxd75 in #20

Full Changelog: v0.1.6-beta...v0.1.7-beta

  • A speed up in the install command
  • git shorthands. You can now use github: , gh: , cb: etc
  • Tapes now has a config file, read the readme for more details

Release v0.1.6-beta

Choose a tag to compare

@github-actions github-actions released this 05 Nov 14:28

What's Changed

  • perf: speed up build times with mold, sccache, and parallel codegen by @amitxd75 in #14

Full Changelog: v0.1.5-beta...v0.1.6-beta

A few changes, The most important one is

  • The binary name is now tapes, just tapes, its no longer tapes-v2, it is just tapes, it was heavily requested and since no one knew what the OG tapes was, it is fine I feel like some users will be rejoicing because of this as they complained it was quite annoying.

  • Depending on how you installed, i recommend you remove the previous binary to avoid confusion, with the script it should be in ~/.local/bin, and cargo install stores its binaries in ~/.cargo/bin

  • Thanks for @amitxd75 (again) as he introduced mold and sccache, making the builds even faster

  • An FAQ is in the work to properly tell beginners what tapes is

  • Tapes now has a gui, Thanks to @LilaccFlowerr see it here, https://github.com/LilaccFlowerr/tapes-deck

Release v0.1.5-beta

Choose a tag to compare

@github-actions github-actions released this 02 Nov 19:15

Release v0.1.4-beta

Choose a tag to compare

@github-actions github-actions released this 01 Nov 18:54

What's Changed

New Contributors

Full Changelog: https://github.com/futurekismo-oss/tapes-v2/compare/v0.1.3-beta...v0.1.4-beta

  • General bug fixes
  • Tapes now has shell completion, just follow the instructions in the installation part of the readme
  • An handy dandy script for version bumping, useful for our developers
  • Logging to a file ( ~/.local/share/tapes/tapes.log ), this should make debugging issues easier as user can know just provide the log file, unfortunately i have not yet implemented periodic cleanup for this file, something for the future
  • On the talk of logging, amitxd75 has ripped out env_logger for a minimal custom made logger, this change has fastened build times as env_logger was a bloated dependency, builds on my celeron n4020 halved
    • Dev: 1m 10s -> 40s
    • Release: 2m 40s -> 1m 17s

Release v0.1.3-beta

Choose a tag to compare

@github-actions github-actions released this 31 Oct 13:06

Full Changelog: https://github.com/futurekismo-oss/tapes-v2/compare/v0.1.2-beta...v0.1.3-beta

Some bug fixes

Eject can delete data. After swapping back, eject runs remove_dir_all on the staging tree. That tree is only symlinks if nothing new happened. But anything created at the top level of ~/.config while a tape is live is a real file in the staging tree: a new app’s config dir, or a top-level file an app rewrites by atomic rename (like mimeapps.list). Eject deletes those permanently.

Switching skips the outgoing tape’s eject hooks. Insert calls the swap-back helper directly, and only the eject command runs hooks. For shells that is the worst gap, because stopping the old shell is exactly what an eject hook does.

Symlink failures are swallowed. symlink_targets logs the error and continues, so the swap proceeds and that app’s config silently disappears from the live ~/.config until eject. It should abort before the swap.

Hooks run through $SHELL -c, synchronously. If your login shell is fish (the default in Caelestia’s setup), hooks written in sh syntax can break. A hook that starts a long-running shell blocks tapes until it exits. The README’s own eject example has qs -c caelestia, which as far as I know runs in the foreground unless daemonized.

The ignore list is four names (tape.toml, .git, README.md, .github). A tape repo with LICENSE, .gitignore or .editorconfig at the top level gets those symlinked into ~/.config.

Dry-run doesn’t match the docs. It returns before building anything, but INTERNALS.md says it builds the staging tree and prints the plan.

All these bugs have been fixed, thankfully reported by erotic-erox

release 0.1.3-beta also introduces install hooks

[tape]
name="caelestia"
desc = "A fluid morphing shell"
...
[hooks.install] # run during tapes-v2 install /path_or_repo/caelestia
value = [
  "git clone https://github.com/caelestia-dots/shell.git ${XDG_CONFIG_HOME:-$HOME/.config}/quickshell/caelestia",
  "cd ${XDG_CONFIG_HOME:-$HOME/.config}/quickshell/caelestia",
  "cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/",
  "cmake --build build",
  "sudo cmake --install build"
]

these hooks are run during installation and should be used by public repos to run install scripts or whatnot, or maybe users who wanna dont wanna redo the manual installation of a tape

Full Changelog: https://github.com/futurekismo-oss/tapes-v2/compare/v0.1.2-beta...v0.1.3-beta

Release v0.1.2-beta

Choose a tag to compare

@github-actions github-actions released this 30 Oct 16:37

Full Changelog: https://github.com/futurekismo-oss/tapes-v2/compare/v0.1.1-beta...v0.1.2-beta

  • introduces a --dir argument for the install command, this allows you to install any directory or sub directory of a public repo and tapes will find that dir in the repo and make a tape out of it, this removes the need for repos to conform to a strict top-level .config folders.
  • a useless resolve tilde util helper has been removed, this command existed to handle the conversion of paths like "~/config" to "/home/user/config" and was made with my inadequate knowledge of tilde resolving at the time, i have now been informed that shells (bash, zsh, ...) do this automatically and there is no need for tapes to do this in its own code. this note is for contributors, for real users this change has no effect

Release v0.1.1-beta

Choose a tag to compare

@github-actions github-actions released this 30 Oct 10:41