Trey Moen 58e114aa41 common: fix OpenpilotPrefix cleanup on macOS (#38728)
The destructor built its cleanup commands as "rm %s -rf", with the flags
after the operand. GNU rm permutes arguments so this works on device and
in CI, but BSD rm on macOS stops option parsing at the first operand and
treats "-rf" as a second filename:

  $ mkdir -p /tmp/rmtest/sub && rm /tmp/rmtest -rf
  rm: /tmp/rmtest: is a directory
  rm: -rf: No such file or directory
  exit=1

So nothing is removed, and each of the four calls prints two errors plus
"system command failed (256)" from check_system. Every run of a tool that
owns an OpenpilotPrefix (replay, cabana) leaks its params dir, its
comma_home and its /tmp/msgq_ dir; 33 of each had accumulated on my
machine.

Pass the flags first.

(cherry picked from commit 7cf55c3b7a2d9bcee87821e413fa322866f64c5b)
2026-09-06 16:37:05 +08:00
2026-08-15 14:20:16 +08:00
2026-08-15 07:46:15 +00:00
2026-08-15 07:46:15 +00:00
2026-08-15 14:20:16 +08:00
2026-08-15 15:00:09 +08:00
2026-08-15 15:00:09 +08:00
2026-08-15 14:20:16 +08:00
2026-08-15 14:20:16 +08:00
2026-08-15 15:00:09 +08:00
2026-08-15 07:46:15 +00:00
2026-08-15 14:20:16 +08:00
2026-08-15 14:20:16 +08:00
2026-08-15 14:20:16 +08:00
2026-08-15 07:46:15 +00:00
2026-08-15 07:46:15 +00:00
2026-08-15 07:46:15 +00:00
2026-08-19 18:19:48 +08:00
2026-08-15 14:20:16 +08:00
2026-08-15 07:46:15 +00:00
2026-08-15 14:20:16 +08:00
2026-08-15 14:20:16 +08:00
2026-08-15 14:20:16 +08:00
2026-08-15 07:46:15 +00:00
2026-08-15 07:46:15 +00:00
2026-09-06 16:35:00 +08:00

🌞 What is sunnypilot?

sunnypilot is a fork of comma.ai's openpilot, an open source driver assistance system. sunnypilot offers the user a unique driving experience for over 300+ supported car makes and models with modified behaviors of driving assist engagements. sunnypilot complies with comma.ai's safety rules as accurately as possible.

💭 Join our Community Forum

Join the official sunnypilot community forum to stay up to date with all the latest features and be a part of shaping the future of sunnypilot!

Documentation

https://docs.sunnypilot.ai/ is your one stop shop for everything from features to installation to FAQ about the sunnypilot

🚘 Running on a dedicated device in a car

First, check out this list of items you'll need to get started.

Installation

Next, refer to the sunnypilot community forum for installation instructions, as well as a complete list of Recommended Branch Installations.

🎆 Pull Requests

We welcome both pull requests and issues on GitHub. Bug fixes are encouraged.

Pull requests should be against the most current master branch.

📊 User Data

By default, sunnypilot uploads the driving data to comma servers. You can also access your data through comma connect.

sunnypilot is open source software. The user is free to disable data collection if they wish to do so.

sunnypilot logs the road-facing camera, CAN, GPS, IMU, magnetometer, thermal sensors, crashes, and operating system logs. The driver-facing camera and microphone are only logged if you explicitly opt-in in settings.

By using this software, you understand that use of this software or its related services will generate certain types of user data, which may be logged and stored at the sole discretion of comma. By accepting this agreement, you grant an irrevocable, perpetual, worldwide right to comma for the use of this data.

Licensing

sunnypilot is released under the MIT License. This repository includes original work as well as significant portions of code derived from openpilot by comma.ai, which is also released under the MIT license with additional disclaimers.

The original openpilot license notice, including comma.ai’s indemnification and alpha software disclaimer, is reproduced below as required:

openpilot is released under the MIT license. Some parts of the software are released under other licenses as specified.

Any user of this software shall indemnify and hold harmless Comma.ai, Inc. and its directors, officers, employees, agents, stockholders, affiliates, subcontractors and customers from and against all allegations, claims, actions, suits, demands, damages, liabilities, obligations, losses, settlements, judgments, costs and expenses (including without limitation attorneys’ fees and costs) which arise out of, relate to or result from any use of this software by user.

THIS IS ALPHA QUALITY SOFTWARE FOR RESEARCH PURPOSES ONLY. THIS IS NOT A PRODUCT. YOU ARE RESPONSIBLE FOR COMPLYING WITH LOCAL LAWS AND REGULATIONS. NO WARRANTY EXPRESSED OR IMPLIED.

For full license terms, please see the LICENSE file.

💰 Support sunnypilot

If you find any of the features useful, consider becoming a sponsor on GitHub to support future feature development and improvements.

By becoming a sponsor, you will gain access to exclusive content, early access to new features, and the opportunity to directly influence the project's development.

GitHub Sponsor

Become a Sponsor

PayPal

PayPal this

Your continuous love and support are greatly appreciated! Enjoy 🥰

- Jason, Founder of sunnypilot

S
Description
No description provided
Readme MIT 5.2 GiB
Languages
Python 56%
C 21.5%
C++ 15.9%
Cuda 3.4%
Metal 1%
Other 1.9%