Bug#1010342: Refuses to create directories for unburdening

2022-05-02 Thread Didier 'OdyX' Raboud
Control: tags -1 -moreinfo

30 avril 2022 00:17 "Axel Beckert"  a écrit:
> Didier 'OdyX' Raboud wrote:
>> With 0.4.2, after noticing my directories didn't get symlinked, I tried to
>> run unburden-home-dir by hand and I got the following error(s) (with or
>> without -F):
> 
> Thanks for the bug report!
> 
>> WARNING: Can't handle /home/didier/.cache: /tmp/.unburden-didier/cache not 
>> equal
>> /run/user/1000/.unburden-didier/cache at /usr/bin/unburden-home-dir line 
>> 245, <$list_fh> line 2
> 
> This basically means that to wants symlink files elsewhere than before.
> 
>> I haven't spent much time investigating; as 0.4.1.2 works for me now.
>> 
>> Anything I could do to help?
> 
> The output of "env | fgrep XDG_" might be helpful.

Here comes (that's on my other local user 'diidier'):

$ env | fgrep XDG
XDG_CACHE_HOME=/run/user/1001/.unburden-diidier/cache
XDG_CONFIG_DIRS=/home/diidier/.config/kdedefaults:/etc/xdg
XDG_CURRENT_DESKTOP=KDE
XDG_DATA_DIRS=/home/diidier/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share
XDG_RUNTIME_DIR=/run/user/1001
XDG_SEAT=seat0
XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
XDG_SESSION_CLASS=user
XDG_SESSION_DESKTOP=KDE
XDG_SESSION_ID=3
XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session2
XDG_SESSION_TYPE=x11
XDG_VTNR=7

> The weird thing is that there weren't any changes which explains that
> out of the box:
> (…)
> Then again, I noticed this, too, on one of my hosts. I thought I might
> have toyed with a non-standard config for testing one of the changes
> mentioned above and just uncommented this line in
> /etc/unburden-home-dir to make it work again:
> 
> #TARGETDIR=/tmp

According to etckeeper, this went commented (and still is) on the upgrade from 
0.3.3 to 0.4.

> (But before you do the same change, please read until the end of this
> mail and do "stat" that file.)
> 
> Actually this looks a bit like a result of this commit from 2015 between
> 0.3.3 and 0.4:
> 
> commit 65f632b73c7a78e6f30aae143eebb95e5bb15866
> Author: Axel Beckert 
> Date: Sun Jul 5 01:43:27 2015 +0200
> 
> Don't set TARGETDIR in config by default but compute a sane
> default value
> 
> The default value is determined as follows:
> 
> - 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/.
> 
> Requires new runtime dependency libfile-slurp-perl.
> 
> For coverage computation, the test suite is run twice, once with
> and once without $TMPDIR and $XDG_RUNTIME_DIR being set.
> 
> Closes: #780387
> 
> So I wonder if for some reason the /etc/unburden-home-dir conffile got
> updated this time while it didn't get update with quite a lot of
> previous updates.
> 
> Can you also send me the output of "stat /etc/unburden-home-dir" in
> case you didn't edit it since the update.

$ LANG=C stat /etc/unburden-home-dir
  File: /etc/unburden-home-dir
  Size: 119 Blocks: 2  IO Block: 1024   regular file
Device: fd01h/64769dInode: 34780   Links: 1
Access: (0644/-rw-r--r--)  Uid: (0/root)   Gid: (0/root)
Access: 2022-05-02 08:44:06.0 +0200
Modify: 2016-05-13 03:15:21.0 +0200
Change: 2016-05-15 19:21:02.0 +0200
 Birth: -

What I don't understand is why the symlinks currently point to /tmp, why it 
wants to change them to /run/user/… now, and why it cannot "go through" that 
change now. Refusing to update the symlinks seems overly defensive, isn't it?

Best,

Didier



Bug#1010342: Refuses to create directories for unburdening

2022-04-29 Thread Axel Beckert
Control: tag -1 + moreinfo

Hi Didier,

Didier 'OdyX' Raboud wrote:
> With 0.4.2, after noticing my directories didn't get symlinked, I tried to
> run unburden-home-dir by hand and I got the following error(s) (with or
> without -F):

Thanks for the bug report!

> WARNING: Can't handle /home/didier/.cache: /tmp/.unburden-didier/cache not 
> equal /run/user/1000/.unburden-didier/cache at /usr/bin/unburden-home-dir 
> line 245, <$list_fh> line 2

This basically means that to wants symlink files elsewhere than before.

> I haven't spent much time investigating; as 0.4.1.2 works for me now.
>
> Anything I could do to help?

The output of "env | fgrep XDG_" might be helpful.

The weird thing is that there weren't any changes which explains that
out of the box:

commit 35b8081adf5186e9ea8b366f3da027d6e3eed9f7
Author: Marcel Partap 
Date:   Wed Mar 2 22:59:32 2022 +0100

Only append UID if XDG_RUNTIME_DIR is unset

Note: I seem to have forgotten und mention this pull request in the
changelog. Fixed in git now.

Anyway, this was a bugfix which seemed to rather unbreak things than
break things. See https://github.com/xtaran/unburden-home-dir/pull/20

commit cbc8088fe133f4230104d3e7527a0806973d6dca
Author: Axel Beckert 
Date:   Mon Feb 14 00:23:01 2022 +0100

Fix wrong file name order in output when creating symlinks

Only happened when something actually was replaced by a symlink.

Note: This is just a change in the output formatting, not a change in
the logic.

commit 2f65f99ef8447ef886fa2e9e3b2f007aa5b738c6
Author: Axel Beckert 
Date:   Sun Feb 13 23:03:49 2022 +0100

Fix superfluous whitespace

Note: Same as above.

commit ced05b7a52e0e9736f9fcd6683898c84ab65c0ee
Author: Axel Beckert 
Date:   Sun Feb 13 22:07:54 2022 +0100

Support %i = user id in the FILELAYOUT configuration variable

Allows one to use /run/user// as TARGETDIR. Add an
example for that as well.

Also make documentation of the configuration file easier to grok,
by using dotted lists for listing the format strings, etc.

Semantic versioning: Bump minor version due to an backwards
compatible feature.

Note: This just adds a potential format string, but doens't change any
logic.

That's all since 0.4.1.3. (And the only change in the script itself
between 0.4.1.2 and 0.4.1.3 was the version bump.)

And under etc/ there weren't any changes since 2017.

Then again, I noticed this, too, on one of my hosts. I thought I might
have toyed with a non-standard config for testing one of the changes
mentioned above and just uncommented this line in
/etc/unburden-home-dir to make it work again:

  #TARGETDIR=/tmp

(But before you do the same change, please read until the end of this
mail and do "stat" that file.)

Actually this looks a bit like a result of this commit from 2015 between
0.3.3 and 0.4:

commit 65f632b73c7a78e6f30aae143eebb95e5bb15866
Author: Axel Beckert 
Date:   Sun Jul 5 01:43:27 2015 +0200

Don't set TARGETDIR in config by default but compute a sane
default value

The default value is determined as follows:

- 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/.

Requires new runtime dependency libfile-slurp-perl.

For coverage computation, the test suite is run twice, once with
and once without $TMPDIR and $XDG_RUNTIME_DIR being set.

Closes: #780387

So I wonder if for some reason the /etc/unburden-home-dir conffile got
updated this time while it didn't get update with quite a lot of
previous updates.

Can you also send me the output of "stat /etc/unburden-home-dir" in
case you didn't edit it since the update.

Regards, Axel
-- 
 ,''`.  |  Axel Beckert , https://people.debian.org/~abe/
: :' :  |  Debian Developer, ftp.ch.debian.org Admin
`. `'   |  4096R: 2517 B724 C5F6 CA99 5329  6E61 2FF9 CD59 6126 16B5
  `-|  1024D: F067 EA27 26B9 C3FC 1486  202E C09E 1D89 9593 0EDE



Bug#1010342: Refuses to create directories for unburdening

2022-04-29 Thread Didier 'OdyX' Raboud
Package: unburden-home-dir
Version: 0.4.2
Severity: normal

Hello Axel,

With 0.4.2, after noticing my directories didn't get symlinked, I tried to
run unburden-home-dir by hand and I got the following error(s) (with or
without -F):

WARNING: Can't handle /home/didier/.cache: /tmp/.unburden-didier/cache not 
equal /run/user/1000/.unburden-didier/cache at /usr/bin/unburden-home-dir line 
245, <$list_fh> line 2

I haven't spent much time investigating; as 0.4.1.2 works for me now.

Anything I could do to help?

Best,
Didier


-- System Information:
Debian Release: bookworm/sid
  APT prefers buildd-unstable
  APT policy: (990, 'buildd-unstable'), (500, 'unstable-debug'), (500, 
'stable-security'), (500, 'unstable'), (500, 'testing'), (500, 'stable'), (500, 
'oldstable'), (100, 'experimental'), (1, 'experimental-debug'), (1, 
'buildd-experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.17.0-1-amd64 (SMP w/4 CPU threads; PREEMPT)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=fr_CH.UTF-8, LC_CTYPE=fr_CH.UTF-8 (charmap=UTF-8), 
LANGUAGE=fr_CH:fr
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages unburden-home-dir depends on:
ii  dpkg   1.21.7
ii  libconfig-file-perl1.54-1
ii  libfile-basedir-perl   0.09-1
ii  libfile-rsync-perl 0.49-1
ii  libfile-touch-perl 0.12-1
ii  libfile-which-perl 1.27-1
ii  libipc-run-perl20200505.0-1
ii  libstring-expand-perl  0.04-3
ii  libtry-tiny-perl   0.31-1
ii  perl   5.34.0-4

Versions of packages unburden-home-dir recommends:
ii  lsof4.95.0-1
ii  x11-common  1:7.7+23

Versions of packages unburden-home-dir suggests:
pn  agedu  
pn  autotrash  
pn  bleachbit  
pn  corekeeper 
ii  eatmydata  130-2
ii  filelight  4:21.12.3-1
pn  fslint 
pn  tmpreaper  
pn  unburden-home-dir-doc  

-- Configuration Files:
/etc/default/unburden-home-dir changed:
UNBURDEN_HOME=true

/etc/unburden-home-dir.list changed:
m D .cache cache
m D .thumbnails thumbnails
m D .ccache ccache
m d .config/google-chrome/*/Thumbnails google-chrome-thumbnails-%1
m f .config/google-chrome/*/Thumbnails-journal 
google-chrome-thumbnails-journal-%1
m d .config/chromium/*/Thumbnails chromium-thumbnails-%1
m f .config/chromium/*/Thumbnails-journal chromium-thumbnails-journal-%1
m d .mozilla/default/*/Cache mozilla-default-cache-%1
m d .mozilla/default/*/startupCache mozilla-default-startup-cache-%1
m d .mozilla/firefox/*/Cache firefox-cache-%1
m d .mozilla/firefox/*/startupCache firefox-startup-cache-%1
m d .mozilla/firefox/*/Cache.Trash firefox-cache-trash-%1
m d .conkeror.mozdev.org/conkeror/*/Cache conkeror-cache-%1
m d .conkeror.mozdev.org/conkeror/*/startupCache conkeror-startup-cache-%1
m d .conkeror.mozdev.org/conkeror/*/Cache.Trash conkeror-cache-trash-%1
m d .kazehakase/mozilla/kazehakase/Cache kazehakase-cache
m d .galeon/mozilla/galeon/Cache galeon-cache
m d .gnome2/epiphany/mozilla/epiphany/Cache epiphany-cache
m d .xxxterm/cache xxxterm-cache
m d .forg/cache forg-cache
m d .opera/cache opera-cache
m d .opera/cache4 opera-cache4
m d .opera/opcache opera-opcache
m d .opera/cacheOp opera-cacheOp
m d .config/qupzilla/profiles/*/networkcache qupzilla-cache-%1
m d .thunderbird/*/Cache thunderbird-cache-%1
m d .mozilla-thunderbird/*/Cache debian-thunderbird-cache-%1
m d .icedove/*/Cache icedove-cache-%1
m d .buzzbird/*/Cache buzzbird-cache
m f .aptitude/cache aptitude-cache
m d .wesnoth*/cache wesnoth%1-cache
m d .gaia/cache gaia-cache
m d .googleearth/Cache google-earth-cache
m d .java/deployment/cache java-deployment-cache
m d .adobe/Acrobat/*/Cache adobe-acrobat-%1-cache
m d .shotwell/thumbs shotwell-thumbs
m D .sxiv sxiv-thumbs
m D .devscripts_cache devscripts_cache
r D .Trash trash
r D .local/Trash local-trash
r D Downloads downloads
r D .mcf/tmp mcf-tmp


-- no debconf information