Without the -n flag to ln if a symlink to directory already exists another one is created inside of existing symlinked directory.
Which means the symlink is never updates and it polutes the symlinked repository to itself
$ tree /home/user/.cache/paperwm@hedning:matrix.org/local/gnome-shell/extensions/
/home/user/.cache/paperwm@hedning:matrix.org/local/gnome-shell/extensions/
└── paperwm@hedning:matrix.org -> /home/user/paperwm
$ tree /home/user/.cache/paperwm@hedning:matrix.org/local/gnome-shell/extensions/paperwm@hedning:matrix.org
/home/user/.cache/paperwm@hedning:matrix.org/local/gnome-shell/extensions/paperwm@hedning:matrix.org
├── <various files and folders>
├── mr.sequential-workspaces -> /home/user/paperwm
└── <various files and folders>
…t's a directory)
Without the
-n
flag toln
if a symlink to directory already exists another one is created inside of existing symlinked directory. Which means the symlink is never updates and it polutes the symlinked repository to itself