omarchy icon indicating copy to clipboard operation
omarchy copied to clipboard

Add aarch64 support for Omarchy 3.x

Open jondkinney opened this issue 6 months ago • 63 comments

Building upon what @nilszeilon did in #876 this reworks things quite a bit, especially around the initial user creation to help folks on a new asahi-alarm m1/m2 install (or fresh parallels VM created through archboot) get their non-root user created so we can execute the omarchy install automatically as that new user.

The changes include architecture detection, platform-specific package management, bootloader configuration, and custom binary handling for aarch64.

TL;DR;

It should work on any new aarch64 VM (tested with Parallels and VMware) as well as Asahi-Alarm for m1/m2 macs.

On a VM

Get the parallels or vmware images with wget & sudo installed (or install Arch on your own VM w/ the necessary deps). Both of these downloads are good through Dec 12th. If you need a new one after that, ping me and I can try to help.

Once your VM is booted, if you're using Parallels, choose "Install Parallels Tools" from the "Action" menu. If you're using VMware you do not have to manually initiate any VMware Tools installation, it's fully automated.

Finally after logging into the VM as root execute the wget command below 👇 Protip: that wget url should be in the bash history of both VMs if you press the up arrow on the keyboard a few times.

wget -qO- https://raw.githubusercontent.com/jondkinney/armarchy/amarchy-3-x/boot.sh | OMARCHY_REPO=jondkinney/armarchy OMARCHY_REF=amarchy-3-x bash

If you want to type in a shorter url, this shortlink will expand to the above: curl -fsSL hdwy.link/armarchy-3-x | bash you can inspect it by omitting the | bash first if you like which will just print the text it's going to pipe to bash.

On Asahi Alarm (for M1/M2 Macs)

Do the install from within macOS (IMPORTANT: choose the minimal option when prompted) once complete, it'll have you reboot into Arch. Log in as the root user (password: root).

Next, setup wifi with: nmcli device wifi connect <SSID> password <password> then install wget with pacman -S wget and finally, manually type the wget command above ☝️ noting the (accidental) difference between the fork name "aRmarchy" and branch name "amarchy" without the "r" (sorry about that!).

Note: I've generally not had a problem with installing over wifi when testing Asahi-Alarm on my M1 Max MacBook Pro w/ 32gb RAM, but YMMV. Use ethernet for a more stable experience.

Key Features

  • Full ARM64 architecture support for both virtualized environments (Parallels) and bare metal (Asahi Linux)
    • It probably would work on a Pi, too?
  • Automatic architecture detection with special handling for Asahi Linux systems
  • Platform-specific package management with fallback strategies for (some) missing ARM packages

Major Changes

1. Architecture Detection & Environment Setup

  • Early detection of ARM architecture (aarch64/arm64) in install.sh
  • Asahi Linux detection through multiple methods (OS release, kernel name, installed packages)
  • Environment variables (OMARCHY_ARM, ASAHI_ALARM) for conditional logic throughout installation

2. Package Management

Repository Configuration

  • ARM-specific pacman configuration (pacman.conf.arm) with:
    • Arch Linux ARM repositories (core, extra, alarm, aur)
    • Asahi Linux ARM repository for Apple Silicon specific packages
    • Disabled multilib (not available on ARM)
    • Omarchy repository placeholder (currently unavailable for ARM)
  • Custom mirrorlists:
    • mirrorlist.arm for Arch Linux ARM mirrors
    • mirrorlist.asahi-alarm for Asahi-specific packages

Package Installation Strategy

  • Split package lists:
    • omarchy-base.packages: Cross-platform packages
    • omarchy-arm.packages: ARM-specific requirements
    • omarchy-x86.packages: x86_64-only packages
  • Yay AUR helper installed on ARM for packages not in official repos
  • Custom installation scripts for ARM packages unavailable through standard channels

3. Audio System Configuration

  • Critical pipewire-jack installation in preflight to prevent jack2 conflicts
  • Asahi audio support with asahi-audio package
  • DRM content support via widevine from asahi-alarm repository
  • Custom manual bild of the Omarchy microfork of Chromium to support widevine

4. Application Support

Custom ARM Installations

  • 1Password: Direct download and installation from official ARM64 tarball
  • Obsidian: ARM64 AppImage installation with desktop integration
  • Omarchy Chromium: Custom ARM64 build (v139.0.7258.154-2) with widevine support
  • Omarchy LazyVim: Built from source for ARM compatibility (no arm omarchy mirror avail)
  • Walker: Prebuilt ARM64 binary to avoid long compilation times (and lock to currently included x86 version)
  • ASDControl: Prebuilt ARM64 binary for Apple Silicon display control

Vulkan Configuration

  • Walker compatibility fix: Added Vulkan ICD configuration for ARM64 (VK_ICD_FILENAMES environment variable)
    • Note from jon: @nilszeilon recently added this, it may work, but may also install too new of a version through yay? I'm hard-coding the prebuild walker binary for now, but this could prove useful in the future.

5. Bootloader Configuration

Limine Support

  • ARM64 Limine bootloader support with:
    • BOOTAA64.EFI installation for UEFI ARM systems
    • Architecture-aware kernel detection (uses Image instead of vmlinuz)
    • Modified mkinitcpio hooks (no microcode on ARM)
    • Automatic skip for Asahi Linux (uses U-Boot)
    • Also skip for VMware (for now) since VMware can't find the config file for some reason.
      • I hope to fix this in the future

Boot Configuration

  • Conditional bootloader setup based on platform:
    • x86_64: Standard Limine with microcode, UKI support
    • ARM64 (non-Asahi): Limine without microcode
    • Asahi Linux: Skip Limine installation (U-Boot managed)
    • VMware: Skip Limine installation (for now)

6. Virtual Machine Detection

  • Screensaver disabled in virtual machines through hypridle configuration
  • systemd-detect-virt integration to detect VM environments

7. Helper Scripts Updates

Updated Scripts

  • omarchy-refresh-pacman-mirrorlist: Architecture-aware mirrorlist selection
  • omarchy-snapshot: Architecture-specific restoration tools
  • omarchy-limine-update: ARM64 kernel detection support, updates limine.conf automatically.

New Scripts

  • limine-arm64.sh: ARM64-specific Limine installation
  • Multiple ARM installation scripts in install/arm_install_scripts/

8. Error Handling & Compatibility

Graceful Degradation

  • mkinitcpio warnings: Continue on non-fatal warnings (missing fsck helpers, for example)
  • Package availability: Fallback strategies for missing ARM packages
  • Binary compatibility: Prebuilt binaries for performance-critical applications

Platform-Specific Fixes

  • Yaru icon cache: Manual update required on ARM
  • Build dependencies: Handled through temporary yay installation

Testing Environments

  • Arch Linux ARM in Parallels Desktop VMs
  • Arch Linux ARM in VMware Desktop VMs
  • Asahi Linux ARM on Apple Silicon Macs (M1/M2)
    • Dual boot required, on Limine, only U-Boot.
  • Fresh installations via archboot ISO

Migration Notes

  • Existing x86_64 installations are unaffected
  • ARM support is automatically detected and configured
  • No manual intervention required for standard installations as a root user after account / user details are entered.
    • Does support choosing an existing non-root user if one is detected!
    • Also has checks to ensure required data is provided and valid (first name, last name, email)
    • Allows quitting the script with ctrl+c

Future Improvements

  • Omarchy repository support for ARM64 packages (pending) cc: @dhh @ryanrhughes
  • Native ARM builds for currently prebuilt binaries
  • Additional ARM-specific optimizations

##Breaking Changes

None (hopefully) - all changes are intended to be additive and maintain backward compatibility with existing x86_64 installations. At least, that's the goal.

Dependencies

  • Arch Linux ARM or Asahi Linux ARM base system
  • Standard Arch Linux ARM repositories
  • Asahi Linux ARM repository (for Apple Silicon systems)

Install Video

Here's a video showing the full install process. If you slow it down to 0.25x you can scrub around to a point of interest and sort of see what's going on.

https://share.cleanshot.com/rmD5JKqY

CleanShot 2025-09-23 at 15 21 50@2x

Fin!

And with any luck, you'll be greeted with a lovely Tokyo Night!

CleanShot 2025-09-23 at 15 22 52@2x

VMware vs Parallels

When installing to VMware, we automatically add the Open VMware Tools. Note that currently the clipboard does not synchronize even with VMware Tools properly installed.

We also have to add some env vars on VMware to allow Hyprland to load properly. However, note that this likely performs worse than parallels because it's doing all of the rendering through software instead of using any discrete GPU capabilities. I think Parallels uses some discrete GPU because these settings are not necessary for it to work on Parallels. So I'd recommend Parallels, but VMware is free, so choose what you want.

env = WLR_NO_HARDWARE_CURSORS,1
env = WLR_RENDERER_ALLOW_SOFTWARE,1
env = WLR_RENDERER,pixman
env = __GLX_VENDOR_LIBRARY_NAME,mesa
env = LIBGL_ALWAYS_SOFTWARE,1

You also need to enable 3d acceleration in VMware (this is already done in the provided download image)

Parallels Tools

We handle the VMware tools automatically, but we can't do the same for Parallels. It's pretty simple though, the installer will error out and tell you what to do if you don't have the Parallels Tools mounted. The easiest path is to just choose "Install Parallels Tools" from the "Action" menu before running the Omarchy wget install command. The installer will take it from there!

With Parallels Tools installed, make sure you set two critical settings to have the best experience. The first one at the Parallels Desktop preferences level, the second one at the VM configuration level.

This ensures that command (super) + space will work inside of the VM and not trigger the macOS spotlight shortcut.

This allows for the mouse to flow in/out of the VM window (if you're not in full screen) without having to manually release the mouse cursor by pressing ctrl + option.

jondkinney avatar Sep 23 '25 07:09 jondkinney

Just saw this PR as I was working on getting my Asahi Alarm setup working with Omarchy (using your and @nilszeilon's older branches) but running into issues. Switched to this with a half broken setup and it seems to have sorted it out. Still early days as I just booted into Hyprland, but looking very favorable even for a system in a strange state. Great work! 🙌

(Oh yeah, M1 MacBook Air here)

bnferguson avatar Sep 23 '25 22:09 bnferguson

Brilliant work! @jondkinney This is going bring a bell of a lot of people to Omarchy.

Am I correct here by saying that the idea is that bare metal users install Asahi Alarm with minimal installation first and then wget the omarchy installation script like in the @nilszeilon 's discussion page?

neosepulveda avatar Sep 24 '25 09:09 neosepulveda

Am I correct here by saying that the idea is that bare metal users install Asahi Alarm with minimal installation first and then wget the omarchy installation script like in the @nilszeilon 's discussion page?

Yep! The exact command is mentioned in the PR description above. References my fork and new 3.x branch.

wget -qO- https://raw.githubusercontent.com/jondkinney/armarchy/amarchy-3-x/boot.sh | OMARCHY_REPO=jondkinney/armarchy OMARCHY_REF=amarchy-3-x bash

jondkinney avatar Sep 24 '25 13:09 jondkinney

@jondkinney coming here from #876. I used my VMware Fusion VM as prepared via https://github.com/jondkinney/armarchy/blob/vm-testing/full_install_guide.md, then ran this installer script.

Still got the issue with Limine claiming not to find a configuration, although I went and checked everything. I opened a thread in the omarchy-install-help Discord channel as well where I dumped all outputs.

The installer definitely had an issue with the nvme partitions, and couldn't create the boot entry at first. It couldn't parse the disk name correctly from the output. I went through the steps manually.

Otherwise the installer went through.

After booting with Grub instead, I tried to start Hyprland directly from the TTY, but it crashes.

michapietsch avatar Sep 24 '25 18:09 michapietsch

Is it just me or are things broken when trying to remove packages/webapps/anything? I tried to remove docker and it wouldn't go away, same for typora

BrentRosen avatar Sep 26 '25 02:09 BrentRosen

Thanks for this @jondkinney!! Got it working with an M1 macbook air and it works great! I'm still thinkering with the os, it's my first linux experience, but loving it so far.

I had to install obsidian through the AUR, obsidian-appimage worked great.

I suspect there are a couple of things not set up properly with the web apps and chromium based on the behaviors I saw on videos, they dont get tiled automatically, but i suspect is something with chromium cause i cant open a chromium window if i have a webapp open...

I found this settings for the monitor to work great with the macbook air display, the default won't show Btop in a quarter tile because the size is smaller than 24px,

env = GDK_SCALE,2.1
monitor= eDP-1, 2560x1600@60, auto, 1.666667

I'll try to dive into the documentations on the weekend and try to wrap my head around the os so i can better understand what's going on. thanks for everything!

blost-fyi avatar Sep 27 '25 02:09 blost-fyi

neat turn key solution! anyone any luck running amd64 AUR packages (amd64 Appimage inside actually)

patroza avatar Sep 27 '25 11:09 patroza

I had to install obsidian through the AUR, obsidian-appimage worked great.

Obsidian should have been installed automatically for you. Was it not?

Edit: it's possible that the state of the repo at the time you installed was missing the fuse2 package. If so, that would prevent Obsidian from launching. This should be fixed.

I suspect there are a couple of things not set up properly with the web apps and chromium based on the behaviors I saw on videos, they dont get tiled automatically, but i suspect is something with chromium cause i cant open a chromium window if i have a webapp open...

Yea, not sure what's causing that. We're manually installing the chromium micro-fork since the micro-fork isn't available to us on ARM just yet through the omarchy package mirror. I'm going to look into this today.

Edit: I changed the way that chromium is installed. I think it should tile properly now. See https://github.com/basecamp/omarchy/pull/1897#issuecomment-3352490231 for more details.

jondkinney avatar Sep 28 '25 13:09 jondkinney

Screenshot 2025-09-29 at 1 50 35 AM installing on aarch arch with VMWare (mac M3) in progress... Screenshot 2025-09-29 at 1 52 35 AM Screenshot 2025-09-29 at 1 52 41 AM Screenshot 2025-09-29 at 1 52 44 AM Screenshot 2025-09-29 at 1 52 49 AM Not allocated sufficient disk space, :( Screenshot 2025-09-29 at 2 08 45 AM

Finally (allocated 16Gb for system)

Screenshot 2025-09-29 at 10 20 22 AM Thanks @jondkinney

fishkingsin avatar Sep 28 '25 17:09 fishkingsin

update experienced lockscreen app died Screenshot 2025-09-29 at 11 27 14 AM

fishkingsin avatar Sep 29 '25 04:09 fishkingsin

I suspect there are a couple of things not set up properly with the web apps and chromium based on the behaviors I saw on videos, they dont get tiled automatically, but i suspect is something with chromium cause i cant open a chromium window if i have a webapp open...

I updated the way we're installing chromium yesterday to grab the omarchy-chromium-bin from the AUR instead of manually installing it. I think this will fix those issues for you if you reinstall. If you've customized too much and can't easily reinstall, then try to remove the existing chromium install and get it from the AUR with yay -S somarchy-chromium-bin. In particular, you want to ensure that /usr/bin/chromium is actually a bash script, not the chromium binary. The chromium binary should be located at /usr/lib/chromium/chromium.

The beginning of /usr/bin/chromium should look like this. CleanShot 2025-09-30 at 09 26 21@2x

So to uninstall the existing chromium you may have to remove that file that manually and ensure it gets recreated when installing the bin from the AUR. Though I've not explicitly tried this, so I may be missing some other steps. But hopefully this points you in the right direction.

jondkinney avatar Sep 30 '25 14:09 jondkinney

This looks great, @jondkinney -- Thank you for sharing your work! 💯

One question: is this supposed to cover only VMs or physical machines (Mx Macs) as well? In your description, you mention:

It should work on any new aarch64 VM (though only tested with Parallels so far) as well as Asahi-Alarm for m1/m2 macs.

But all the comments seem to mention "Parallels" only 🤔

jorge-campo avatar Sep 30 '25 15:09 jorge-campo

One question: is this supposed to cover only VMs or physical machines (Mx Macs) as well? All the comments seem to mention "Parallels" only 🤔

It works for m1/m2 macs through Asahi Alarm, and it works with Parallels and VMware with Parallels tools and VMware tools automatically installed, respectively. VMware tools is fully automatic, but on Parallels you have to mount the Parallels Tools ISO first by choosing "Actions > Install Parallels Tools" from the Parallels menus prior to executing the wget omarchy install command. If you do that, it'll detect that mounted ISO and install the parallels tools for you, automatically.

In the TL;DR there's a section about how to install it on Asahi-Alarm on physical m1/m2 macs. And at the end of the description there's a note about VMware vs Parallels.

jondkinney avatar Sep 30 '25 15:09 jondkinney

Hey! Just tried this on a partition on my M2 Pro laptop. I've been trying both your patches and nilszelion stuff originally, but I've run into different issues every time. I decided this morning to try again with a clean install of asahi this time since just running the command was stopping at a random point, and the command stopped at the same random point :(

It basically asks me if I want to create a new user or not, sets up the user, asks for git config stuff, and then exits the installation completely after saying "Removing temporary passwordless sudo".

Is there anything blatantly obvious that I am missing? How can I better debug this issue?

The Omarchy fomo is real 😂

Edit: Added picture of wget command output

image

Kylar13 avatar Oct 01 '25 03:10 Kylar13

Hey! Just tried this on a partition on my M2 Pro laptop.

Hey @Kylar13 -- How did you partition your M2 disk? Did you keep the macOS partition intact, and was able to get back to macOS? I'm afraid Arch bootloader will mess with boot options and lock me out of macOS.

The Omarchy fomo is real 😂

It is! hahaha

jorge-campo avatar Oct 01 '25 07:10 jorge-campo

Hey @Kylar13 -- How did you partition your M2 disk? Did you keep the macOS partition intact, and was able to get back to macOS? I'm afraid Arch bootloader will mess with boot options and lock me out of macOS.

Just used the asahi installer, it takes care of making the partitions and requires confirmation for all actions so you can follow along to what it is doing! If at any point you need to reinstall or erase Arch, this link explains how the partitions are set up quite well and how to manage them.

They way the boot order is set up by the installer is Asahi as default and then showing boot options in the macOS bootloader if you long press the power button. It's only once you go into Asahi that you get the grub bootloader.

Kylar13 avatar Oct 01 '25 08:10 Kylar13

It basically asks me if I want to create a new user or not, sets up the user, asks for git config stuff, and then exits the installation completely after saying "Removing temporary passwordless sudo".

Sorry about that! It was a silly mistake on my part that caused that immediate exit as a command I was running to check if we're in virtualization or not was returning a non-zero exit code. It is fixed in the latest update to this branch. Please try again! You should also see a much prettier overall experience as I tuned the Asahi Alarm install with ASCII instead of ANSI / unicode characters so it works properly and looks good.

The Omarchy fomo is real 😂

Indeed! Hope you get to see this 👇 on your m1 soon!

Pixelmator Pro 2025-10-02 03 05 00

jondkinney avatar Oct 02 '25 08:10 jondkinney

Sorry about that! It was a silly mistake on my part that caused that immediate exit as a command I was running to check if we're in virtualization or not was returning a non-zero exit code. It is fixed in the latest update to this branch. Please try again! You should also see a much prettier overall experience as I tuned the Asahi Alarm install with ASCII instead of ANSI / unicode characters so it works properly and looks good.

Hell yeah!! I was able to finish the install, thanks a lot for your work man.

Indeed! Hope you get to see this 👇 on your m1 soon!

Pixelmator Pro 2025-10-02 03 05 00

Just FYI, I in fact did not get this screen, just the following:

image

I does say that the installation completed, and I did get into omarchy after manually rebooting, so everything did work, but just so you're aware

Kylar13 avatar Oct 02 '25 08:10 Kylar13

Just FYI, I in fact did not get this screen, just the following

I does say that the installation completed, and I did get into omarchy after manually rebooting, so everything did work, but just so you're aware

Thanks for the screenshot! I had some wrong paths to the images in there from local testing, so when I fixed those I thought it would fix that error, too. But it was something else. I think my latest push will have this sorted. Not that you necessairily need to try the install again, unless you're feeling extra ambitious. Thanks again.

jondkinney avatar Oct 02 '25 14:10 jondkinney

I’m getting this error while trying to install Omarchy using your script on the VMware Fusion image you provided.

My setup: Omarchy running on VMware Fusion 13.6.4 (24832108) on macOS Tahoe 26.1 in a Macbook Pro M4

image

I noticed this in the full log

image

Thank you for your work!

BrielOtero avatar Oct 12 '25 14:10 BrielOtero

@BrielOtero Looks like the AUR was down while you were trying to install. I have some enhancements for that github fallback in a branch that I'm testing and I also just rebased to omarchy's dev branch. If you want to point to this branch as the OMARCHY_REF and test, hopefully it'll work to better resolve the deps for YARU. https://github.com/jondkinney/armarchy/tree/amarchy-3-x-dev

Just specify OMARCHY_REF=amarchy-3-x-dev everything else is the same in that wget command documented in the description here.

jondkinney avatar Oct 13 '25 01:10 jondkinney

Is it just me or are things broken when trying to remove packages/webapps/anything? I tried to remove docker and it wouldn't go away, same for typora

I was able to successfully remove the 3 google webapps (contacts, photos, calendar) and they no longer show in the application list in the super + space menu, which happened immediately.

Then when I went to remove all the docker things, that also worked (the packages uninstalled successfully), but the "Docker" desktop app does still show in the application menu/list.

To remove that you just need to remove the Docker.desktop entry that walker/elephant reads.

rm ~/.local/share/applications/Docker.desktop

After doing that walker immediately stopped showing "Docker" in the list. I didn't have to refresh walker or reboot or anything.

Removing Typora successfully removed the package, and deleted the desktop entry. So I think we just need to figure out which docker package we tie into the uninstall for to remove the desktop entry. It's almost certainly lazydocker since that's what the desktop entry launches.

jondkinney avatar Oct 14 '25 15:10 jondkinney

This is a fantastic work, @jondkinney ! I installed yesterday from the dev branch (OMARCHY_REF=amarchy-3-x-dev) and I notice a few things:

  • Setting up the wifi in Asahi before running the script only works when specifying the wlan0 inteface: nmcli device wifi connect "<SSID>" password "<password>" ifname wlan0 (not a problem with your script, of course, but I hope it helps others).
  • The setup failed from the beginning trying to install git. I later realized that problem is that the the geo-configured Omarchy mirrors were unavailable. Setting up the de and eu mirrors fixed the issue for me.
  • Natural scrolling, once set to on, only works in terminal, but it doesn't work in other apps such as Chrome or Obsidian.
  • I was able to install Microsoft Edge from AUR, but nothing happens when choosing Edge from the apps menu.
  • When you update Omarchy via the Update menu, it always reports that the kernel was updated and you need to restart.

I didn't move forward because my muscle memory needs natural scrolling 😅 but I hope to run this soon. The system is super fast and lightweight. Thank you!

jorge-campo avatar Oct 15 '25 05:10 jorge-campo

@BrielOtero Looks like the AUR was down while you were trying to install. I have some enhancements for that github fallback in a branch that I'm testing and I also just rebased to omarchy's dev branch. If you want to point to this branch as the OMARCHY_REF and test, hopefully it'll work to better resolve the deps for YARU. https://github.com/jondkinney/armarchy/tree/amarchy-3-x-dev

Just specify OMARCHY_REF=amarchy-3-x-dev everything else is the same in that wget command documented in the description here.

After 20 attempts, I finally managed to install it!

image

However, something went wrong — I got this issue on the first boot, and there’s no UI appearing. image

I’m not sure which logs I can look at to diagnose the problem.

BrielOtero avatar Oct 18 '25 11:10 BrielOtero

Still rocking omarchy after a couple weeks, any ideas on what the best approach would be to upgrade @jondkinney?

Kylar13 avatar Oct 20 '25 06:10 Kylar13

PSA - I've deleted amarchy-3-x-dev since the main amarchy-3-x is the most up to date, and will continue to be. In fact, amarchy-3-x runs Omarchy 3.1+ as it's fully rebased to the latest on dev as of the release of Omarchy 3.1.

@Kylar13 as to your question about how to upgrade, I'd recommend

  1. Open a terminal and navigate to ~/.local/share/omarchy
  2. Launch lazygit
  3. Stash all of your changes
    • Press capital A (to stage all modified and untracked files)
    • Press capital S (to bring up the stash menu)
    • Press capital U (to stash all changes including untracked files)
    • Optionally give the stash a name, or just press enter
  4. Tab to the branch list and pull by pressing the p key
  5. Tab to the stash pane and press the space key to apply the stash
    • Note, this will keep the stash in the stash list (rather than the g key popping the stash) in case there are conflicts/issues and you need to abort, reset, pull, whatever, keeping your stashed changes safe.
  6. Either the stash will apply without issue/warning/conflicts and you're upgraded...OR resolve conflicts as they arise in lazygit (look up a video if you haven't done this before) and then you'll be upgraded once all conflicts are resolved.
CleanShot 2025-10-20 at 08 37 24@2x

Note: this screen shot doesn't show the stash pane. It's the last one, so just tab until that's focused.

jondkinney avatar Oct 20 '25 13:10 jondkinney

However, something went wrong — I got this issue on the first boot, and there’s no UI appearing. I’m not sure which logs I can look at to diagnose the problem.

@BrielOtero - this was due to the way the ~/.local/share/omarchy/default/hypr/autostart.sh was handling executing the commands when launching hyprland. I fixed it with a custom script https://github.com/basecamp/omarchy/pull/1897/files#diff-c1cf8d2dde07ed746045565e9e514a7990903a366d067c40d03379201db26fdfR2 which is also referenced in the autostart file, itself https://github.com/basecamp/omarchy/pull/1897/files#diff-ba572be45d4f09469c0bcacb29a18016d8244d393bd19ccfa15830eefd3ec23dR1

If you stash any changes, and pull, then apply those changes, you should be "upgraded". I gave a more in-depth guide here https://github.com/basecamp/omarchy/pull/1897#issuecomment-3422142628

jondkinney avatar Oct 21 '25 04:10 jondkinney

However, something went wrong — I got this issue on the first boot, and there’s no UI appearing. I’m not sure which logs I can look at to diagnose the problem.

@BrielOtero - this was due to the way the ~/.local/share/omarchy/default/hypr/autostart.sh was handling executing the commands when launching hyprland. I fixed it with a custom script https://github.com/basecamp/omarchy/pull/1897/files#diff-c1cf8d2dde07ed746045565e9e514a7990903a366d067c40d03379201db26fdfR2 which is also referenced in the autostart file, itself https://github.com/basecamp/omarchy/pull/1897/files#diff-ba572be45d4f09469c0bcacb29a18016d8244d393bd19ccfa15830eefd3ec23dR1

If you stash any changes, and pull, then apply those changes, you should be "upgraded". I gave a more in-depth guide here #1897 (comment)

@jondkinney Thanks a lot! I got it running, and it works amazingly well. Really impressive work!

BrielOtero avatar Oct 21 '25 13:10 BrielOtero

Hi I know the supported methods are through Parallels/VMware Fusion but I was trying it on UTM hoping that I could use software rendering (since I had tested Arch for aarch64 on UTM and managed to get hyprland working with software rendering) - however I'm running into a few issues and unable to get it to fallback to software rendering, I can see the omarchy splash screen, then theres a blinking cursor where I got back to the tty to debug what happened.

image

I know this is quite outside the scope but was just curious at getting it to run on UTM without hardware acceleration.

Chiroyce1 avatar Oct 21 '25 15:10 Chiroyce1

...on UTM hoping that I could use software rendering

Where are you specifying the software rendering? We have to do this for VMware as well, and I write it to the default/hypr/envs.conf here https://github.com/basecamp/omarchy/pull/1897/files#diff-edac98df7e6402cd650fc2447f4679b4d381d1e5cc0b3367003a5216ede878ffR51 maybe give that a shot?

jondkinney avatar Oct 21 '25 18:10 jondkinney