Odourless is a tool for preventing .DS_Store creation. It works on MacOS latest Catalina.
Alpha version! Use it at your own risk!
It use mach_inject
to inject Finder.app
and frida-gum
to replace some syscall including open
, openx_np
, getattrlist
, setattrlist
.
Whenever Finder
try call these function with .DS_Store
file, it will replace the path to a fake one under the odourless cage directory /usr/local/var/.odourless_cage
.
As you see, it do not delete .DS_Store
, but place all .DS_Store
into one directory that you donot care about.
Many thanks to @darwin and @JK3Y !
This project was standing on the shoulders of binaryage/asepsis and JK3Y/asepsis
For discussion, go JK3Y/asepsis#25
Download from release page.
Move Odourless.app
to /Applications
, open it and click to install
daemon.
Ok, that's all.
Next time reboot, odourless-daemon
will auto-start. Take it easy.
You must disable SIP to use this program.
- Click the Apple symbol in the Menu bar.
- Click Restart...
- Hold down Command-R to reboot into Recovery Mode.
- Click Utilities.
- Select Terminal.
- Type
csrutil disable
and press Enter (May ask for password) - reboot
Odourless can build without xcode
. But Command Line Tools
is needed.
Type xcode-select --install
to install Command Line Tools
.
And you need cmake
.
Type brew install cmake
to install cmake
.
git clone https://github.com/xiaozhuai/odourless
cd odourless
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make install -j8
open dist
Odourless.app is a GUI program for easy installing and manage odourless-daemon
.
A daemon process to inject libodourless-inject.dylib
to Finder
process.
When Finder
restarted, odourless-daemon
will do re-inject.
If you prefer command line than graphics Odourless.app
, you may like this. (Not yet available)
Replace syscall in Finder
process.