Skip to content

Commit 0eed3b8

Browse files
authored
Feature: native control and filters
This now uses launchctl under the hood, so it no longer moves the files and should work with everything natively. Additionally, you can now work on multiples services simultaneously by using filters!
2 parents ad96d30 + a2c616f commit 0eed3b8

File tree

2 files changed

+218
-125
lines changed

2 files changed

+218
-125
lines changed

README.md

Lines changed: 50 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,56 @@
1+
12
# maclaunch
2-
List your macOS startup items and their startup policy.
33

4-
How does it work?
5-
-------------
6-
Lists plist files in LaunchAgents and LaunchDaemons folders.
7-
When disabling an item, it moves it to .disabled so launchctl does not read them anymore.
8-
It does **not** alter the contents in any way. It does not support JSON plists (for now).
4+
Lists and controls your macOS startup items and their startup policy.
5+
6+
Take back control of your macOS system!
7+
8+
```shell
9+
% maclaunch.sh list microsoft
10+
> com.microsoft.update.agent
11+
Type : user
12+
User : hazcod
13+
Launch: disabled
14+
File : /Library/LaunchAgents/com.microsoft.update.agent.plist
15+
> com.microsoft.teams.TeamsUpdaterDaemon
16+
Type : system
17+
User : root
18+
Launch: disabled
19+
File : /Library/LaunchDaemons/com.microsoft.teams.TeamsUpdaterDaemon.plist
20+
> com.microsoft.office.licensingV2.helper
21+
Type : system
22+
User : root
23+
Launch: disabled
24+
File : /Library/LaunchDaemons/com.microsoft.office.licensingV2.helper.plist
25+
> com.microsoft.autoupdate.helper
26+
Type : system
27+
User : root
28+
Launch: disabled
29+
File : /Library/LaunchDaemons/com.microsoft.autoupdate.helper.plist
30+
```
31+
32+
## How does it work?
33+
34+
Lists XML/json/binary plist files in LaunchAgents and LaunchDaemons folders which are loaded by launchctl.
35+
When disabling an item, it uses launchctl to natively stop loading that service.
36+
It does **not** alter the contents in any way or moves the file, so it should work with practically any service.
37+
38+
The name you provide can either be specific to that service or function as a filter to work on multiple services simultaneously.
39+
40+
## Installation
41+
42+
Installation can be done straight from [my Homebrew tap](https://github.com/hazcod/homebrew-hazcod) via `brew install hazcod/homebrew-hazcod/maclaunch` or just copy `maclaunch.sh` to your filesystem.
43+
44+
## Usage
45+
46+
`Usage: maclaunch <list|disable|enable> (filter|system)`
47+
48+
To list all your services: `maclaunch list`
949

10-
Installation
11-
-------------
12-
Installation can be done straight from [my Homebrew tap](https://github.com/hazcod/homebrew-hazcod): `brew install hazcod/homebrew-hazcod/maclaunch`.
50+
To list all your services including system services: `maclaunch list system`
1351

14-
Usage
15-
-------------
52+
To list all microsoft services: `maclaunch list microsoft`
1653

17-
`Usage: maclaunch <list|disable|enable> (item name|system)`
54+
To enable plex player-helper: `maclaunch enable tv.plex.player-helper`
1855

19-
![Example output](https://i.imgur.com/VhHTJXJ.png)
56+
To disable everything related to plex: `maclaunch disable plex`

0 commit comments

Comments
 (0)