buttermanager icon indicating copy to clipboard operation
buttermanager copied to clipboard

Don't depend on grub

Open guedressel opened this issue 1 year ago • 3 comments

I wanted to try out buttermanager on my arch machine. But the installation of buttermanager would have required to install grub on my system. Since the system gets started via systemd-boot, grub is not available. And I have no intention to install grub, because that could potentially hurt or break my current setup.

Hence, I'm currently not able to install buttermanager on my system.

guedressel avatar Dec 03 '23 13:12 guedressel

Hi @guedressel and thank you very much for your feedback. I totally see your point. The depencency that is installing GRUB in your system is the package grub-btrfs, because ButterManager integrates with this program in order to create snapshots and add them to the entries of the GRUB menu. This way, you can boot your system directly from GRUB from an old snapshot if any update messed your system. This is not available via systemd-boot.

Although this feature is disabled, you will be able to create and manage BTRFS subvolumes and balanced them too. Are you on Arch Linux or any of its derivatives? Because maybe we can do a "trick" changing PKGBUILD to allow you to test the application while I change it in AUR.

egara avatar Dec 04 '23 12:12 egara

Yes, having this dependency optional would be great. And it's to be expected that some functionality will be missing if the dependency is not available. I'm actually running Manjaro but I guess the AUR packages are shared between arch and Manjaro.

guedressel avatar Dec 04 '23 20:12 guedressel

Hi again @guedressel

Ok, I'll make this dependency optional. Meanwhile, if you want to run ButterManager and test it, you can do this:

  • Clone this repo:

    git clone https://github.com/egara/buttermanager.git
    
  • cd into the directory buttermanager/aur

    cd buttermanager/aur
    
  • Edit PKGBUILD

  • Locate this line and remove 'grub-btrfs' dependency

    depends=('btrfs-progs' 'python>=3' 'grub-btrfs' 'python-setuptools' 'python-pyaml' 'python-pyqt5' 'tk')
    
  • Locate this line and change it according to the directory where you have cloned the project

    # Local source if user wants to build the package locally once the git repo has been cloned
    source=('git+file:////home/egarcia/Development/git/buttermanager/')
    
  • Save it and install the package from here:

    makepkg -si
    

Thats all. Now you should be able to run ButterManager. Please, follow the instructions in the Wiki to configure it properly. There is an option that I should hide if grub is not detected that is in Settings -> Boot the system from GRUB using snapshots. I'll change it when I remove that dependency and release the new version of the application.

egara avatar Dec 08 '23 08:12 egara