# Applications Preventing Reboot (macOS/Windows)

## Description

When a Fileset requires a reboot, the FileWave client can warn the user to "Quit All Running Processes" before the restart continues.

Some apps and background processes do not respond cleanly when FileWave Kiosk uses "Quit all" or "Quit Application". A process may restart immediately through LaunchDaemon, or it may ignore the signal FileWave sends. When that happens, users can be blocked from installing Filesets that have the *Requires Reboot* flag set.

## Information

The warning itself is expected, but some listed processes can be surprising. For example:

![S8JE03rDHgojhv40-embedded-image-teimxkjz.png](https://kb.filewave.com/uploads/images/gallery/2023-07/S8JE03rDHgojhv40-embedded-image-teimxkjz.png)

A background service can appear even when the user is not actively using the related application.

## Solution

Requirements to prevent this experience are:

- Customized Kiosk Fileset
- macOS client: bundle ID of the app or service to exclude
- Windows client: process name to exclude

You can configure `settings.ini` to ignore specific apps or processes. Create a Fileset containing `settings.ini`, then associate it with the target clients. The destination folder depends on the operating system:

##### **macOS**

```
/usr/local/sbin/FileWave.app/Contents/Resources/fwGUI.app/Contents/custom
```

##### **Windows (FW v15.4.2 or lower)**

```
C:\Program Files (x86)\FileWave\custom
```

##### **Windows (FW v15.5.0 or higher)**

```
C:\Program Files\FileWave\kiosk\custom
```

The desktop Kiosk reads these changes after the user logs out and logs in again.

To stop an unexpected process from blocking the reboot, first identify the listed app's bundle ID on macOS or process name on Windows.

### Obtain Bundle ID or Process Name

#### Windows

- Send any Fileset with Fileset Properties set to *Requires Reboot* to the test machine.
- Hover over the desired process to exclude

![OvnDIMUfAFkBZOQo-embedded-image-xe0alvhz.png](https://kb.filewave.com/uploads/images/gallery/2023-07/OvnDIMUfAFkBZOQo-embedded-image-xe0alvhz.png)

In this example, excluding Notepad requires `notepad.exe`.

#### macOS

- Change a test device's Debug Level to 99 through the [Client Monitor](https://kb.filewave.com/books/filewave-central-anywhere/page/working-with-filewave-clients "Working with FileWave Clients")
- Send any Fileset with Fileset Properties set to *Requires Reboot* to the test machine.
- When the device prompts the user to quit applications, open `FWGUI.log` in the user's Application Support directory.

```
~/Library/Application\ Support/FileWave/FWGUI.log
```

There should be lines similar to the following, for each process that has prevented the reboot:

```
|DEBUG|INSTALLER|[addProcessInfo] new process added /Applications/Utilities/Terminal.app pid 67345 bundleID com.apple.Terminal
|DEBUG|INSTALLER|[addProcessInfo] new process added /Applications/Preview.app pid 73400 bundleID com.apple.Preview
|DEBUG|INSTALLER|[addProcessInfo] new process added /Applications/TextEdit.app pid 73718 bundleID com.apple.TextEdit
```

### Configure 'settings.ini'

Configure `settings.ini` with the following format. Use a comma-separated list for bundle IDs or process names:

```
[General]
ignoredApplications=com.bar, com.foo
```

For the example of Windows Notepad, it should read:

```
[General]
ignoredApplications=notepad.exe
```

<p class="callout info">For common Windows shell processes that can appear during reboot prompts, consider ignoring the following:</p>

```
[General]
ignoredApplications=StartMenuExperienceHost.exe,SearchApp.exe,TextInputHost.exe
```

For the example of macOS TextEdit, it should read:

```
[General]
ignoredApplications=com.apple.TextEdit
```

Combining this with current generic settings, it may look something like:

```
show_top_downloads=false
window_title="My Customized Kiosk"
hide_system_tray=false

[General]
ignoredApplications=com.adobe.acc.AdobeDesktopService,com.apple.TextEdit
```

### Deployment

Deploy `settings.ini` to the following locations:

#### **macOS**

```
/usr/local/sbin/FileWave.app/Contents/Resources/fwGUI.app/Contents/custom
```

#### **Windows (FW 15.4.2 and lower)**

```
C:\Program Files (x86)\FileWave\custom
```

#### **Windows (FW 15.5.0 and higher)**

```
C:\Program Files\FileWave\kiosk\custom
```