Solves the issue from ae10133b5e the right
way using the actual xdg-terminal-exec package and provides resillient
fallbacks no matter what the user might do.
This also removes the need to restart after changing terminals at all.
fixes#2198fixes#2329fixes#2673fixes#1754
Because of [hardcoded terminals in
glib](https://gitlab.gnome.org/GNOME/glib/-/blob/main/gio/gdesktopappinfo.c#L2755)
the previous fix still doesn't work well with Alacritty and Kitty.
Using our `omarchy-launch-terminal` aliased to `xdg-terminal-exec` does
the trick and doesn't introduce any new dependencies or rely on a lib
that isn't stable.
Derives the list of required modules for the installer from Chris
McLeod's manual installation steps. His instructions say to use the
surface-linux kernel however the default kernel has the right set
of modules already (as noted by the fact that the right modules are
loaded for the keyboard to work during the install and after the LUKS
unlock screen).
I only have a Surface Laptop 3 to test this on but based on the guide
where Chris is using a newer laptop and the only difference is the
pinctrl module which I attempt to autodetect I think it should "just"
work for others but definitely "use at your own risk".
* fix: remove theme-flag
* migration: walker 1.0.0-beta
* Fixups
* Add elephant and walker
* Update for new layout.xml
* Clean up some styling
* add unicode and todo providers
* remove default quick activate keybinds
* Update keybinds and remove defaults to prevent conflict
* Fix menu option
* Fixes
* Remove
* Update height
* Add elephant service
* Remove from hyprland
* Restart service now
* Trim
* Update height
* Fix keybindings style
* Fix install location
* Add walker restart
* Fix indention
* Fix indention
* Fix indention
* Fix indention
* Advance to present
* Need to refresh to bring over the new config
* style adjustments
* Correct the installation of the 1pw policy installer
* Skip the prebuilt for a second while we test
* Need libyaml to build ruby
* No longer needed, gcc-15 compatibility has been added
* Let's just stick to the official path
* GCC15 compatibility for Ruby has been achieved
* No longer necessary
The other mise option is set on Ruby on Rails install
* Added ZLS - Zig's Language Server when installing Zig (#1718)
* style adjustments
* styling changes
* add only_search_title
* css adjustments to fix broken styles
* Be tall again
* Remove for future variable height menu
* Update height / width params
* fix: remove theme-flag
* Fix spacing..again
* Remove service and add launch util
* Fix
* fix: wrong emojis flag
* remove flag, its dmenu only
* set min content width to prevent flickering if the item list contains shorter items
* Remove unused service
* Megakill needed
* Remove any old themes too
* Remove min-width
* Style adjustments
* changes for walker/elephant updates
* Match current width
* Add a little more space between icon and text
* fix: bluetooth find bind
* remove archlinux provider, fix migration with missing providers
* fix: css import
* Fix theme path
* fix: add new error label to layout
* Fix migration
---------
Co-authored-by: David Heinemeier Hansson <david@hey.com>
Co-authored-by: Ryan Hughes <ryan@heyoodle.com>
Co-authored-by: DoKoB0512 <123281216+DoKoB0512@users.noreply.github.com>
Added:
MacBook 8,1
MacBook 9,1
MacBook 8,1 uses slightly different moduels from what I can tell, so I’ve added a case statment. Please tweak as needed.
* add themes from https://github.com/eza-community/eza-themes
* init eza theme during install
* add migration
* refactor migration script to only link eza theme if it exists for current theme
* only link to eza theme if current theme supports it
* only link to eza theme if current theme supports it
* Cleanup
---------
Co-authored-by: David Heinemeier Hansson <david@hey.com>
* First swing at t2 support
* Remove unnecessary enables
* Trim up
* Trim
* Need to use official mirror until we have our own setup
* Use GitHub mirror for now
---------
Co-authored-by: David Heinemeier Hansson <david@hey.com>
* Add Chrome and Brave browser policy support for theme colors
Replace chromium --set-theme-color commands with managed policies
- Add RGB to hex conversion function
- Create /etc/chromium/policies/managed/color.json for Chrome
- Create /etc/brave/policies/managed/color.json for Brave
- Remove deprecated chromium command line theme setting
* force reload
* remove sudo
* renamed flag due to code review on google side
* Add the required directories
* Cleanup
* Slim down
* Unnecessary
---------
Co-authored-by: David Heinemeier Hansson <david@hey.com>
* Create ~/Work with ./bin in the path for contained projects
* Split out the mise work setup as its own configurator
* Fixup the migration to reuse config logic
---------
Co-authored-by: David Heinemeier Hansson <david@hey.com>
* macbook: enable internal keyboard at LUKS by loading applespi in initramfs
- Detect T1 models (MacBookPro13,2/13,3 and 14,2/14,3)
- Add mkinitcpio drop-in: MODULES+=(applespi intel_lpss_pci spi_pxa2xx_platform)
- Add HOOKS+=(keyboard) for early input
- Prefer in-kernel applespi; fallback to DKMS via AUR helper if needed
* macbook: expand SPI keyboard support to include 12-inch MacBook
- Add support for MacBook12,1 (12-inch MacBook 2015-2017) with SPI keyboards
- Rename configuration from T1-specific to SPI-keyboard-specific terminology
- Update mkinitcpio drop-in filename: omarchy-macbook-t1.conf -> omarchy-macbook-spi.conf
- Clarify that this fix targets SPI keyboard interface, not just T1 chip models
- Improved detection: covers all models with SPI keyboards needing applespi
- Update comments and messages to reflect broader hardware support scope
* Integrate MacBook SPI keyboard detection into limine-snapper.sh
- Move MacBook detection from separate hardware script into limine-snapper.sh
- Add comprehensive error handling with systemd journal logging
- Ensure persistent MacBook SPI module loading for every boot
- Remove redundant separate macbook-keyboard.sh file
- Consolidate terminal and log output using tee with process substitution
* Add support for MacbookPro13,1 and 14,1 models
* change log tags
from “omarchy” to “macbook” which is more appropriate.
* Slim down and rearrange code
* Unrelated change
* More specific naming and make sure its actually run
---------
Co-authored-by: Ryan Hughes <1630358+ryanrhughes@users.noreply.github.com>
Co-authored-by: David Heinemeier Hansson <david@hey.com>
* Change lazyvim and asdcontrol to packages
* Remove asdcontrol and lazyvim
* Add lazyvim setup
* Don't trigger rebuild. We already rebuild later.
* Add new pacman.conf after install
* Update config to keep mirrors in mirrorlist
* Add lazyvim setup back
* Make webapp installer work with local images
* Update tuis to work offline
* Update pacman config situation
* Extract the reboot segment into its own file
* Explainer
* Can't return in executed scripts
* Add post-install
* Extract the reboot segment into its own file
* Fix rebase doubling up
* Add run wrapper function for feedback
* Redirect output to log
* Move gnome updates to first-run
* Add theme to first-run
* Updat to try to get logging working
* Create the file and give permissions
* Test gsettings
* Revert "Test gsettings"
This reverts commit 49c27d319407f6c95fcbb4c5a2646e54b50c9ab4.
* Stop logging
* Add time outputs to end of logs
* Rearrange some scripts to cleanup
* Cleanup
* Add timing to run script
* Don't enable multilib for offline
* Add prebuild ruby
* Try spinner setup
* Prevent exit 1 due to grep not matching
* Update limine config to work for USB installs as well
* Add offline install to env report
* Fix grep pipefailure
* Update logs exports to work with subshells
* Fix backward logic
* Attempt to fix logging again
* Export chrootable for subshells
* Clean up outputs
* Move chrootable up
* Source chroot instead
* Changes for logging
* Center up reboot notice
* Update fixed paths
* Update trap
* Revert reverting precompiled ruby due to issues
* Revert "Revert reverting precompiled ruby due to issues"
This reverts commit c159e7dc51cfdd2fb750c49c66bc4468e1208446.
* Remove junk to cleanup fixed paths now that we have relative
* Add git branch check to transition beta to main
* Log output
* Add time output on summary screen
* We don't need sudo here
* Add ansi helpers to make code cleaner
* Add dry-run helpers for testing
* Split out some common / reused items
* Add log output function
* Use gum log to output cleaner
* Cleanup
* Update trap with options
* Fix reboot and pad it
* Cleanup
* Add dry-run for testing
* Use default $PADDING for gum
* More styles
* Styles and really exit
* Update to new format
* Add ansi vars
* Update log output to prevent flickering
* Fix logo exporting
* Trap updates
* Add exit handler
* Prevent double-trapping
* Update traps
* Consolidate logic
* Update reboot to work in chroot
* Eliminate double-guard
* Attempt to speed up by removing mkinitcpio hooks
* Add multilib for nvidia users
* Add back wireless-regdom
* Remove dryrun items
* Fix to be offline
* Set fonts for plymouth to solve freetype2 issue
* Required -y to run
* Update omarchy-refresh-plymouth to account for limine changes
* Update omarchy-refresh-plymouth to account for limine changes (#1575)
* Required -y to run
* Update omarchy-refresh-plymouth to account for limine changes
---------
Co-authored-by: David Heinemeier Hansson <david@hey.com>
* Update modes
* Remove direct executions of .sh files
* Add variable safety
* Add omarchy-upload-log
* Add broadcome fix for MBP
* Prevent printing on screen when rebooting
* Make packages list universal
* Rename
* Remove retry message
* Fix packages target
* Add system info to upload
* Update variable name
* Remove unnecessary executable statuses
* Remove gesture default
* Add bcm4360 fix to install
* Add useful debug info
* Add OMARCHY_PATH
* Only look locally offline
* Rename / rearrange files
* Export so they're available to subshells
* Update for alternate
* Rearrange
* Log install time if no arch
* Add limine to packages list
* Update comments
* Update sizing method
* Update mode switcher
* Move icons to be embedded in installer
* Set install mode to online
* shebang and sudo
* Remove deleted branch check
* Elim banners
* Elim verbosity
* Rename LOG_FILE
* Multilib on by default
* Flip to positive
* Switch to gnome-theme.sh for first run
* Elim ansi-codes helper
* Move guard up to be the first thing that's hit
* Extract a couple of functions
* Trim
* Trim
* Move back to trap
* Update to single gum file
* Just show total
* Pulled function to a helper
* Extract explaining function
* Use complete conditional flows where possible
* Reference variable close to its use
* Use modern bash conditional syntax
* Comment before function
* Use a simpler shared exit headline
Doesn't matter how we stopped, just that we did
* CRs
* Keep constants together
* Style on comment
* Explain QR Code
* Modern bash conditional and use lowercase for all local variables
* Use bash calculation syntax for numbers
* Use calculation syntax where possible
* cleanup was not intention revealing enough imo
* Spacing
* Retry won't produce something different in offline mode
* Not needed
* Use modern bash conditional style
* String-wrapping not needed in [[ ]]
* Might as well use constants for all of these
* Don't need the wrapping
* Move the output saving into where we're working with it
* Not needed as long as we just source this
* Gum is a helper
* Slim down logging setup
* Reflect broader scope of work
* Everything should live in file
* Simpler
* Ordering
* Style
* Better separation of concerns
* Stop pretending these are meant to run directly
* Move all packaging execution together
* No longer used in an offline centric setup
* None of these are directly executable any more either
* Modern bash conditional
* Better name
* Explain what's going on
* Use modern bash conditional
* Use modern bash styule
* No need for bashing
---------
Co-authored-by: David Heinemeier Hansson <david@hey.com>
Co-authored-by: DoppioJP <jakub@doppio.jp>