Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Seeing it on my Ventura. Partial output:

Code:
 % sw_vers
ProductName:    macOS
ProductVersion:    13.0
BuildVersion:    22A380
% defaults read com.apple.loginitems | more
{
    SessionItems =     {
        Controller = CustomListItems;
        CustomListItems =         (
                        {
                Alias = {length = 216, bytes = 0x00000000 00d80003 00010000 ce8cae5f ... 00012f00 ffff0000 };
                CustomItemProperties =                 {
                    "com.apple.LSSharedFileList.ItemIsHidden" = 1;
                    "com.apple.loginitem.HideOnLaunch" = 1;
                };
                Flags = 1;
                Name = "iTunesHelper.app";
            },
 
Seeing it on my Ventura. Partial output:

Code:
 % sw_vers
ProductName:    macOS
ProductVersion:    13.0
BuildVersion:    22A380
% defaults read com.apple.loginitems | more
{
    SessionItems =     {
        Controller = CustomListItems;
        CustomListItems =         (
                        {
                Alias = {length = 216, bytes = 0x00000000 00d80003 00010000 ce8cae5f ... 00012f00 ffff0000 };
                CustomItemProperties =                 {
                    "com.apple.LSSharedFileList.ItemIsHidden" = 1;
                    "com.apple.loginitem.HideOnLaunch" = 1;
                };
                Flags = 1;
                Name = "iTunesHelper.app";
            },
What is the location of the file?
 
❯ sw_vers
ProductName: macOS
ProductVersion: 13.0
BuildVersion: 22A380
❯ cd ~
❯ defaults read com.apple.loginitems
2022-10-27 11:57:23.616 defaults[10067:125421]
Domain com.apple.loginitems does not exist
 
I get the same "Domain com.apple.loginitems does not exist", probably because I deleted iTunesHelper.app after the upgrade to Ventura :)
Some login items are in /private/var/db/com.apple.xpc.launchd/loginitems.501.plist
 
Some login items are in /private/var/db/com.apple.xpc.launchd/loginitems.501.plist
Yes.

And /private/var/db/com.apple.backgroundtaskmanagement/BackgroundItems-v4.btm
And ~/Library/Application Support/com.apple.backgroundtaskmanagementagent/backgrounditems.btm
And ~/Library/Preferences

And possibly buried in some other places.

Too many places to look and not important to me. Can live with having to launch stuff manually vs at login.
 
And /private/var/db/com.apple.backgroundtaskmanagement/BackgroundItems-v4.btm

Too many places to look and not important to me.
You are correct, that is the file that stores user added apps to login items in Ventura.
I don’t care either, I have only one app that runs in the Menu Bar.
 
Xcode has a couple of options. If Xcode is installed, can right-click > Open With > Source Code (I believe; path might be slightly off).

plutil is a command that comes with Xcode to dump binary plists.

Non-Xcode way: copy the file to some location, change the extension to .plist, do a Quick View to see the contents. Can copy/past that to an editable/ASCII .plist file.
 

Attachments

  • Screenshot 2022-10-28 at 12.33.41 PM.png
    Screenshot 2022-10-28 at 12.33.41 PM.png
    52.3 KB · Views: 162
  • Screenshot 2022-10-28 at 12.32.30 PM.png
    Screenshot 2022-10-28 at 12.32.30 PM.png
    156.3 KB · Views: 193
There is an easy way to launch an app hidden now: create a plist file in ~/Library/LaunchAgents/ and the Background item added message will be displayed.
Example plist for launching Terminal hidden:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>terminal.LaunchAtLogin</string>
    <key>ProgramArguments</key>
    <array>
        <string>open</string>
        <string>-j</string>
        <string>/System/Applications/Utilities/Terminal.app</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
</dict>
</plist>
 
  • Love
Reactions: kikangh and Feek
There is an easy way to launch an app hidden now: create a plist file in ~/Library/LaunchAgents/ and the Background item added message will be displayed.
Example plist for launching Terminal hidden:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>terminal.LaunchAtLogin</string>
    <key>ProgramArguments</key>
    <array>
        <string>open</string>
        <string>-j</string>
        <string>/System/Applications/Utilities/Terminal.app</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
</dict>
</plist>
To be fair here, your "easy way" involves creating a .plist file, which most people will not know how to do...

Prior to Ventura, the "easy way" was to select the option to hide at launch.
 
TextEdit - New File - Format - Plain text - Copy & Paste the text - Save as terminal.LaunchAtLogin.plist
 
  • Like
Reactions: kikangh
Right, but for the other folks not on this forum that don't have any technical knowledge?
I personally don’t consider editing a simple text file as “technical knowledge”.
LaunchAgents have been on macOS forever and are well documented, on this forum and elsewhere
https://launchd.info
https://developer.apple.com/library...stemStartup/Chapters/CreatingLaunchdJobs.html

I consider that the thread exists for potentially finding solutions. For complaining, Apple users have
Product Feedback https://www.apple.com/feedback/ and Apple Support https://support.apple.com/contact

Just out of curiosity, I would love to understand BackgroundItems-v4.btm. But there is no documentation for it, at first look it seems complicated, and I got a feeling Apple might add it to SIP in the future.
 
  • Haha
Reactions: bunnyhero
I personally don’t consider editing a simple text file as “technical knowledge”.
Riiiiight... Again, I'm not talking about me or my nearly 20 years of IT knowledge. I'm referring to the Grammas and the "Sorry, I'm not very tech savvy" people out there that have no idea what Macrumors even is.

LaunchAgents have been on macOS forever and are well documented, on this forum and elsewhere
Again, for someone like you or I, editing a text file or a .plist file, great. Done. Boom.

Now, put all of your "technical knowledge" aside and put on your "not so tech savvy" shoes and try to grapple why some option or workflow has behaved one way for years but now does not. I feel you will continue to fail in missing my point, though.
 
Riiiiight... Again, I'm not talking about me or my nearly 20 years of IT knowledge. I'm referring to the Grammas and the "Sorry, I'm not very tech savvy" people out there that have no idea what Macrumors even is.


Again, for someone like you or I, editing a text file or a .plist file, great. Done. Boom.

Now, put all of your "technical knowledge" aside and put on your "not so tech savvy" shoes and try to grapple why some option or workflow has behaved one way for years but now does not. I feel you will continue to fail in missing my point, though.
I can put on any shoes, but I can’t fix what Apple has broken.

As mentioned above, contact Apple about the missing feature.
 
I can put on any shoes, but I can’t fix what Apple has broken.

As mentioned above, contact Apple about the missing feature.

Right. I’ve already noted in another post that I’ve filed FB11646152. And I’ve referenced other’s feedback ID’s in mine…

I was only playing point/counterpoint here. Sure, it’s great that you and I have some more tech knowledge than the average person. I’m just saying most folks won’t feel that way.
 
tried this with redquits and another app. both still launch windows at startup despite the plists. i, too, would like if you would elaborate. and no, im far from a n00b or idiot...
 
The plist runs the open command at login with options:
open – open files and directories
-g Do not bring the application to the foreground.
-j Launches the app hidden


Unfortunately, it doesn’t seem to work for all apps, Chrome being one of them.
You can test from Terminal an app behaviour, example for VLC
Code:
open /Applications/VLC.app

open -j /Applications/VLC.app

open -g /Applications/VLC.app

For other open options run man open or https://ss64.com/osx/open.html
 
  • Like
Reactions: kikangh and dacrone
The plist runs the open command at login with options:
open – open files and directories
-g Do not bring the application to the foreground.
-j Launches the app hidden


Unfortunately, it doesn’t seem to work for all apps, Chrome being one of them.
You can test from Terminal an app behaviour, example for VLC
Code:
open /Applications/VLC.app

open -j /Applications/VLC.app

open -g /Applications/VLC.app

For other open options run man open or https://ss64.com/osx/open.html
thanks for the breakdown. i'll test all apps im interested in hiding. i have also noticed that when i first mapped my nas drives, they all opened at boot and self-closed once mapped... but now (2 days later) they simply map at boot and do not launch/close. i think ventura just has flaws as of now but hopefully updates fix these rather quickly
 
  • Like
Reactions: bogdanw
There is an easy way to launch an app hidden now: create a plist file in ~/Library/LaunchAgents/ and the Background item added message will be displayed.
Example plist for launching Terminal hidden:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>terminal.LaunchAtLogin</string>
    <key>ProgramArguments</key>
    <array>
        <string>open</string>
        <string>-j</string>
        <string>/System/Applications/Utilities/Terminal.app</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
</dict>
</plist>
Perfect, thank you. That's worked for me.
 
  • Like
Reactions: bogdanw
An alternative for launching multiple apps at login: an AppleScript running multiple open commands, saved as an app.
Code:
do shell script "/usr/bin/open -j /System/Applications/Calculator.app"
do shell script "/usr/bin/open -j /System/Applications/TextEdit.app"
do shell script "/usr/bin/open -j /System/Applications/Utilities/Console.app"
Open Script Editor (/Applications/Utilities/Script Editor), copy-paste the code (edited with the paths to your desired apps of course :)), save as an application (File Format: Application). In System Preferences – General – Login Items, add the created app to Open at login.
 
  • Like
Reactions: Fiasco and Feek
An alternative for launching multiple apps at login: an AppleScript running multiple open commands, saved as an app.
Code:
do shell script "/usr/bin/open -j /System/Applications/Calculator.app"
do shell script "/usr/bin/open -j /System/Applications/TextEdit.app"
do shell script "/usr/bin/open -j /System/Applications/Utilities/Console.app"
Open Script Editor (/Applications/Utilities/Script Editor), copy-paste the code (edited with the paths to your desired apps of course :)), save as an application (File Format: Application). In System Preferences – General – Login Items, add the created app to Open at login.
will this hide foreground windows though?
 
  • Like
Reactions: jagooch
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.