diff options
| author | Syndamia <kamen@syndamia.com> | 2022-09-05 21:39:07 +0300 |
|---|---|---|
| committer | Syndamia <kamen@syndamia.com> | 2022-09-05 21:39:07 +0300 |
| commit | 1e46c55a4ccc31655b478ae4a1a97fc78545cbd7 (patch) | |
| tree | 1119b07bf69401da30b64196f85e34249ddfb19d /.zshrc | |
| parent | fa15e45be968d6ffdef5eda1bb711d15286e1b1d (diff) | |
| download | dotfiles-1e46c55a4ccc31655b478ae4a1a97fc78545cbd7.tar dotfiles-1e46c55a4ccc31655b478ae4a1a97fc78545cbd7.tar.gz dotfiles-1e46c55a4ccc31655b478ae4a1a97fc78545cbd7.zip | |
Added pre-sync and post-sync function to sen command, for much improved funtoo gentoo overlay compatibility
Diffstat (limited to '.zshrc')
| -rw-r--r-- | .zshrc | 33 |
1 files changed, 32 insertions, 1 deletions
@@ -77,7 +77,7 @@ device="desktop" # can be either "desktop" (default when empty), "server" or "an if [[ -x "$(command -v emerge)" ]]; then alias seq="sudo emerge --quiet-build -v" alias sep="sudo emerge -pv" - alias sen="sudo ego sync && sudo emerge --quiet-build -vuDN @world" + alias sen="pre-sync && sudo ego sync && post-sync && sudo emerge --quiet-build -vuDN @world" alias seN="sudo emerge --quiet-build -vuDN @world" alias seNp="sudo emerge --quiet-build -pvuDN @world" alias ses="sudo emerge -s" @@ -86,6 +86,37 @@ device="desktop" # can be either "desktop" (default when empty), "server" or "an alias seC="sudo emerge -C" alias secp="sudo emerge -cp" alias seCp="sudo emerge -Cp" + + pre-sync() { + echo '(.zshrc) Running pre-sync function...' + + # Since in post-sync I change the EAPI of a lot of the ebuilds, + # the overlay can't be synced properly + _pwd=$(pwd) + cd /var/db/repos/gentoo + sudo git reset --hard + cd $_pwd + + echo '(.zshrc) pre-sync finished! :}' + } + + post-sync() { + echo '(.zshrc) Running post-sync function...' + + # Fixes the elusive + # "!!! Repository name or alias 'gentoo', defined for repository 'core-kit', overrides existing alias or repository." + # error when enabling gentoo overlay + sudo sed -i 's/aliases = gentoo/#aliases = gentoo/g' /var/git/meta-repo/kits/core-kit/metadata/layout.conf + + # In the gentoo overlay, most packages don't actually use EAPI 8 specific features, so + # they can safely be rolled back to EAPI 7 (funtoo's portage doesn't support EAPI 8 yet). + # However, there are still some that do need EAPI 8, so they should be left alone. + # Since I'm incredibly lazy, for now, this is how I'm gonna do it. + find '/var/db/repos/gentoo' -type f -name "*.ebuild" ! -path "*dev-qt*" ! -path "*kde-frameworks*" ! -path "*kde-plasma*" \ + | xargs sudo sed -i 's/EAPI=8/EAPI=7/g' + + echo '(.zshrc) post-sync finished! :]' + } fi # }}} |
