Meet Voodoo!

Voodoo is a series of little scripts I wrote over the span of a few days.

It aims to implement a very highly requested feature that gets the short end of the stick from all unix desktop environments. That is the abiity to create hard links from the graphical user interface. The reasoning of each developer are the risks noobs running from losing data by misusing it. A problem that could've been as easily fixed by marking the files like they did for symbolic links.

Inspiration

The name comes from voodoo dolls which their use in various cartoon and furry artwork is far more exaggerated to the point where they're supernatural. In the Scooby-doo movie, when the wax voodoo dolls are exposed to torches the real people they're modeled after start to melt. In the Powerpuff girls, flinging the dolls around applies the same kinetic forces against our protagonists. Don't get me started with furry art.

In essence, Unix hard links are like that too. If you modify the hard link of a file, the changes are applied to the source directly as well.

What does Voodoo do?

It creates hard links out of any given file from the right-click context menu of your file manager. Hard links aren't something special I coded in or anything, they are built into every linux distro. Here's a handy guide explaining what they are https://www.redhat.com/sysadmin/linking-linux-explained

Why hard links are more useful than symbolic links, and why you should use Voodoo

Symbolic links are like windows shortcuts, they point to a file. If a file or directory gets renamed or moved, it will break the symbolic link. Hard links instead point to an inode, an inode is the actual data of the file. If a file is moved, it won't move the inode, so the hard link is much harder to break. You may wanna have many copies of the same file in different directories and Voodoo can achieve that easily without shortcuts/symbolic links or duplicating the file to take more space on your drive.


Dependencies

That's it, it needs nothing else. ln is a basic utility for making links, hard or symbolic; both are supported.

Windows uses mklink which always comes preinstalled!

Download for GNOME/Nautilus/Files

voodoo.sh

Place the file into ~/.local/share/nautilus/scripts/ then give it execution permissions with chmod +x. Create the directory if missing.

Download for KDE/Dolphin

voodoo.desktop

Place the file either into ~/.local/share/kio/servicemenus/ if [your version] < KDE5 or ~/.local/share/kservices5/servicemenus/ if [your version] ≥ KDE5 then give it execution permissions with chmod +x. Create the directory if missing.

Download for Cinnamon/Nemo

voodoo.nemo_action

Place the file into ~/.local/share/nemo/actions/ then give it execution permissions with chmod +x. Create the directory if missing.

Download for Windows/Explorer

While it is easy peasy on linux, windows is another story. Most websites would recommend editing the registry to get a submenu, but I'm very worried of doing it. Worse yet, I don't think it's possible run a command through the menu unlike linux's.

Easy context menu is recommended for the installation of voodoo on windows.