-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Reorganize more, fix README, add TODO, etc
- Loading branch information
user
committed
Apr 6, 2024
1 parent
6c9e3e0
commit 2e7ff51
Showing
9 changed files
with
407 additions
and
90 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
97 changes: 11 additions & 86 deletions
97
Asahi Linux Helper/README.md → Asahi Linux Helper/TODO.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,98 @@ | ||
[Link to README (macOS version)](./Asahi%20Linux%20Helper/README.md) | ||
# Asahi Linux Helper (macOS version) | ||
|
||
**Asahi Linux Helper** is a macOS menubar app that makes it easy to restart in Linux (without having to change the default Startup Disk, or to hold down power button) | ||
|
||
There will also be a future Linux version (todo) | ||
|
||
## Download initial demo version: | ||
|
||
Download: | ||
[Asahi Linux Helper.app.zip](./misc/Asahi%20Linux%20Helper.app.zip) | ||
|
||
- Self-signed | ||
- UI demo only | ||
- Doesn't actually restart yet | ||
- Can't actually change default Startup Disk yet | ||
|
||
## Screenshots: | ||
|
||
<img src="./misc/Menu_Screenshot.png" width="50%" alt="Main menu screenshot"><br> | ||
1\. Click "Restart in Linux..." from the menu to restart in Linux next.<br> | ||
(i.e. restart in Linux this time only without changing the default Startup Disk!) | ||
|
||
|
||
--- | ||
|
||
<img src="./misc/Restart_Dialog_Screenshot.png" width="50%" alt="Restart dialog screenshot"><br> | ||
2\. Then click "Restart now!" from the Restart dialog. The system will restart without asking any further questions (if the correct permissions etc are set). | ||
|
||
--- | ||
|
||
<img src="./misc/Preferences_Screenshot.png" width="50%" alt="Preferences dialog screenshot"><br> | ||
Preferences dialog (temporary placeholder UI)<br> | ||
(dialogs use a popover "speech bubble" for technical reasons) | ||
|
||
--- | ||
|
||
<img src="./misc/Change_Default_Screenshot.png" width="50%" alt="Change default startup disk dialog"><br> | ||
The app can also be used to change the default Startup Disk directly from the menu<br> | ||
(for parity with the future Linux version) | ||
|
||
--- | ||
|
||
## Requirements: | ||
- For Apple silicon Macs only (Asahi Linux is ARM64-only) | ||
- macOS 13.5 or newer (or whatever the Asahi Linux installer requires) | ||
- Asahi Linux must already be installed on the computer | ||
- Can't launch Asahi Linux installer from this app, at least for now | ||
|
||
## Project goals: | ||
- The actual point of this app: after using the official Asahi Linux installer, make it easy to reboot using the "other" OS, | ||
instead of requiring the user to already know the holding-down-the-power-button trick | ||
(and/or to already know how to change the default startup disk) | ||
- Help users conveniently boot to Linux from macOS (Linux version (todo) for the other way around) | ||
- Don't be annoying | ||
- Don't be stupid | ||
- Keep it simple | ||
- Use non-technical language (give newbies a chance, experts will know how to use the app regardless of word choices) | ||
- Hide implementation details, but if the user explicitly wants to know how and why, explain in a help dialog: | ||
- "this app uses Apple's official 'bless' tool with --nextonly to temporarily make e.g. Linux load after restarting | ||
next time (i.e. without having to change the default Startup Disk value)" | ||
- bonus: teach the possibility of using "sudo bless --mount "/Volumes/Asahi Linux" --setBoot --nextonly" in | ||
Terminal.app and then restarting normally -> change OS for next time only | ||
- bonus: teach newbies the essential skill of holding down the power button to get to boot picker (show animation?) | ||
- bonus: mention the Linux version of this tool (todo) and "Linux bless" | ||
(sudo dnf install asahi-bless && sudo asahi-bless) | ||
|
||
## Stretch goals: | ||
- Somehow convince official Asahi installer to automatically install this app (icon in user's macOS menubar) | ||
- Somehow convince Asahi project to take over and adopt this app | ||
(have someone else maintain it, and fix the code if necessary) | ||
- Bonus: somehow convince Asahi installer to not silently make Asahi Linux the default Startup Disk and | ||
not completely hide all evidence of user's macOS installation ever existing by default (!) | ||
|
||
### (Stretch goals for the upcoming Linux version) | ||
- Somehow convince whatever Asahi installer installs (currently Fedora Asahi Remix) to automatically | ||
install a corresponding app icon in Linux too (todo: implement Linux version of this app) | ||
- also install the extension that allows showing the icon on Gnome? (KDE Plasma allows showing icon by default) | ||
- Bonus: somehow convince the developer of "asahi-bless" (Linux "bless" counterpart) to add the necessary | ||
command line options, and generally make the tool easier to use | ||
- Bonus: somehow convince whatever Asahi installer installs (currently Fedora Asahi Remix) to automatically | ||
install asahi-bless by default | ||
|
||
|
||
## Project non-goals: | ||
- Don't support Intel Macs (only support what the Asahi Linux installer supports) | ||
- Don't support macOS versions older than 12.3 (only support what the Asahi Linux installer supports) | ||
- Don't implement anything that could be considered "scope creep" | ||
- NOTE: is being "Asahi Linux Helper" scope creep: should this be strictly "Restart in Linux" (and "Restart in macOS")? | ||
|
||
## Opening the Project in Xcode: | ||
|
||
1. Clone the repository: `git clone (URL)` or download the zip file and extract it. | ||
2. Launch Xcode, choose "Open another project...". | ||
3. Navigate to the new folder (Xcode will automatically look for and open the `.xcodeproj` file) | ||
4. You should now be able to build and test the project (please open a new issue if that was not the case!) | ||
|
||
# See also: [TODO.md](./Asahi%20Linux%20Helper%20(Xcode%20project)/TODO.md) | ||
|
||
There will also be a separate Linux version (todo) |
File renamed without changes.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes