Unburden Home Dir Versions Save

Automatically unburden $HOME from caches, etc. Useful for $HOME on SSDs, small disks or slow NFS homes. Can be triggered via an hook in /etc/X11/Xsession.d/.

0.4.1.2

3 years ago

This is a pure bugfix release with no functional changes outside packaging and documentation.

Static Documentation Generation Updates

  • Extend Makefile to also remove Cloudflare crap and generally any occurrences of unneeded <script> tags from mkdocs-generated documentation.
  • Also remove generated search form, search.html and the search subdirectory.
  • Remove mkdocs-generated, but completely useless sitemap.xml and sitemap.xml.gz files as they solely contain nonsense entries. Also fixes Lintian warning compressed-duplicate.

Debian Packaging Updates

  • Bump debhelper compatibility level to 13.
  • Drop debian/unburden-home-dir-doc.lintian-overrides, no more needed.
  • Drom ancient postinst/postrm/preinst files. They were handling a configuration file name change in 2012 and nowadays even cause Lintian warnings.
  • Drop adequate as-installed test as adequate is no more maintained. Also fixes Lintian warning obsolete-runtime-tests-restriction.
  • Add Lintian override for uses-deprecated-adttmp. This is a false positive, it detects the code to make it backwards compatible with autopkgtest < v4.
  • Declare compliance with Debian Policy 4.5.1.

Notes

This release was triggered by H01ger's request to make an upload of about 3000 arch:all Debian packages which haven't seen an upload within a specific time frame and hence lack some more recent features provided by Debian's build daemons.

0.4.1.1

5 years ago

This is a pure bugfix release with no functional changes.

Bug Fixes

  • Fixes a bunch of typos found by Jakub Wilk

Debian Packaging

  • Compliant with Debian Policy 4.1.5.
  • Build-dependencies updated for ruby-ronn package split-up.
  • Build-Conflicts with libperl-critic-freenode-perl for now.
  • Replace /usr/share/doc/unburden-home-dir/html/search/mustache.min.js with symlink in unburden-home-dir-doc and recommend libjs-mustache.
  • Switch to debhelper compatibility level 11.

0.4.1

6 years ago

Default/Example Configuration

  • Switch Chrome/Chromium Thumbnails type from file to directory.
  • Don't merge Chromium Thumbnails into Chrome Thumbnails.

Documentation

  • Fulfils some more Core Infrastructure Documentation Best Practices.
    • Document how to report security bugs by (PGP-encrypted) e-mail.
    • Document PGP key(s) used in the project and how to retrieve it.
  • Add repology package list badges to README.md + docs/installation.md.

Test Suite Changes

Adds new test/build dependency Perl::Critic.

  • Test suite: Run checkbashism also on share/common.sh and Xsession.d/25unburden-home-dir-xdg.
  • Test suite: Provide checkbashism as its own Make target.
  • Use Perl::Critic as part of the test suite.
    • Add libtest-perl-critic-perl as build-dependency.
    • Add .perlcriticrc* files to configure Perl::Critic.

Code Refactoring

Adds new dependencies IPC::Run and Try::Tiny.

  • Make Test::UBH perlcritic-severity-4-clean.
  • Make unburden-home-dir perlcritic-severity-4-clean.
    • Solved by minor refactorings.
  • Make unburden-home-dir perlcritic-severity-3-clean.
    • Use IPC::Run's run() instead of backticks for calling lsof.
      • Add according dependencies on libipc-run-perl.
    • Use /x flag on all regular expressions and sprinkle blanks over them.
    • Use HEREDOC instead of multiline quoted strings.
    • Don't use capture variables outside a regexp without a test.
    • Use Try::Tiny instead of eval { ...; }; if ($@) { ...; }.
      • Add according dependencies on libtry-tiny-perl.
    • Raise Perl::Critic's max_mccabe values slightly by 5.
    • Ignore ErrorHandling::RequireCarping (no module) and ControlStructures::ProhibitCascadingIfElse (compact enough).

Debian Packaging

  • Set Rules-Requires-Root: no.
  • Set Multi-Arch: foreign for unburden-home-dir-doc as suggested by the Multi-Arch hinter.

0.4

6 years ago

New Features

  • Set $XDG_CACHE_HOME to a subdirectory of `unburden-home-dir1's target.
    • Use sane tmpfs-based defaults for $XDG_CACHE_HOME in case unburden-home-dir is unconfigured.
  • Expand environment variables inside config files and list files.
    • Add (build-)dependency on libstring-expand-perl.
  • Don't set TARGETDIR in configuration file by default but compute a sane default value inside unburden-home-dir (Closes: #780387):
    • Use $TARGETDIR if set in the configuration file.
    • Else use $XDG_RUNTIME_DIR/$UID if it exists.
    • Else use /run/user/$UID if it exists.
    • Else use $TMPDIR if it exists.
    • Else use /tmp/.
    • Run test suite multiple times with different environments for coverage computation.
  • Also explicitly look for lsof in /usr/sbin/ to support odd Linux distributions which ship lsof outside a user's $PATH. Fixes GH#8.

Compatibility Fixes

  • Always pass parameters to File::Rsync as array, not as hash reference. This is File::Rsync's preferred interface now and is even fully backwards compatible. Fixes test suite failures with File::Rsync 0.46 (whose backward compatibility mode is buggy).
  • Support newer versions of lsof which additionally always output the used file descriptors. (Suppresses the unexpected line warnings.)

Test Suite Enhancements

  • Test::UBH always uses an environment variable for a part of the configuration file and hence tests the new feature mentioned above.
  • Skip tests which involve the non-readabliity of files if run as root. (Closes: #789832)
  • Catch some more cases of minor differences in output.
  • Fix race-condition in t/expand_environment_variables.t and t/moving-to-existing-subdir.t by enforcing older mtime.
  • Skip t/lsof-force.t if run on NFS. (Fixes test suite aspect of #760890).)
  • Get rid of File::Slurp in test suite (now uses File::Slurper instead).
    • Add libfile-slurper-perl to build-dependencies.
    • Drop libfile-slurp-perl from build-dependencies.

Packaging, Build System, Documentation and File Layout Changes

  • Change section from x11 to utils. It's far more than just an Xsession hook nowadays.
  • Declare compliance with Debian Policy 3.9.8 (no other changes needed)
  • Update copyright years in debian/copyright.
  • Rename debian/unburden-home-dir.* to debian/* for consistency.
  • Extract common logic for Xsession.d files into a separate file.
  • Split up documentation into several Markdown files in a separate directory. Support mkdocs to generate HTML documents from them.
    • Add build-dependency on mkdocs and moreutils (for sponge).
    • No more install README.md as documentation.
    • Drop override for dh_installdocs.
    • Register them with doc-base.
  • Generate man pages from Markdown, too, using ronn.
    • Add ruby-ronn as build-dependency.
  • Use gzip -n to make sure the build stays reproducible.
  • Support build profiles nocheck and nodoc.
    • Bump debhelper build-dependency to ≥ 9.20141010
    • Add build-dependency on dpkg-dev ≥ 1.17.14.
  • Add symlink from LICENSE to COPYING to please flint.
  • Add CONTRIBUTING.md to guide contributors via GitHub.
  • Many documentation updates, including these:
    • Take into account that Gitorious has been closed.
    • ReadTheDocs changed the domain for hosted projects from .org to .io
    • Updated links to BleachBit, Mundus and AutoTrash.
    • Changed links from http:// to https:// where possible.
    • Mention rmlint.
  • Mention SD and CF cards in long package description and documentation.
  • Switch Vcs-Git header from git:// to https://.
  • Add debian/debhelper-build-stamp to .gitignore.
  • Rephrase EeePC mentioning in package description and documentation.
  • Remove (mkdocs-generated?) __pycache__ directory from /usr/share/doc/unburden-home-dir/html/ at build time.

0.4.0.1

6 years ago

Documentation Updates

  • Fix typos in man page.

Test Suite Updates

  • Test suite: Use File::Slurper with eval { write_text(@_); 1 } instead of -e.

Pure Debian Packaging Changes

  • Split off an unburden-home-dir-doc package as recommended by the Debian Policy since version 3.9.7.
    • Make fonts-font-awesome a Recommends of unburden-home-dir-doc instead of a Suggests of unburden-home-dir.
    • Rename all binary-package specific debian/* files to debian/unburden-home-dir.*.
  • Fix installation of NEWS.Debian
  • Don't install mkdocs-generated __init__.py.

0.4.0.2

6 years ago

Compatibility Changes

  • Support autopkgtest v4.
  • debian/copyright: Remove no more updated Git repositories.
  • Update test suite helper library to cope with changed output of mv -v since coreutils 8.28 or so. (Closes: #878336)

Test Suite Changes

  • t/version.t: Re-enable strictures; fix reason why they were disabled.
  • Update test suite helper library to cope with changed output of mv -v since coreutils 8.28 or so. (Closes: #878336)

Documentation Changes

  • Mention profile-sync-daemon as related tool.

Pure Debian Packaging Changes

  • debian/copyright: Update copyright years and my e-mail address.
  • Declare compliance with Debian Policy 4.1.1.
    • Change Priority to optional.
  • Switch to debhelper compatibility level 10.
    • Update versioned debhelper build-dependency accordingly.
    • Drop explicit --parallel from debian/rules.
  • Update debian/gbp.conf to sport current section names and GPG keys.