Skip to content

Commit

Permalink
eopkg: py2 pickle compat, drop -symlinks subpackages
Browse files Browse the repository at this point in the history
**Summary**
This version of eopkg.bin/eopkg.py3 now uses protocol=2 when writing the
pickle cache. This (finally!) means that using eopkg.bin/eopkg.py3 will
not break things when switching to and from the python2 version for
testing purpose.

In addition, this version of the eopkg package comments out (effectively
removes) the proposed -symlink packages, which should make it a clean,
co-installable drop-in replacement for the existing eopkg4-bin and
python-eopkg packages.

Signed-off-by: Rune Morling <[email protected]>
  • Loading branch information
ermo committed Jun 8, 2024
1 parent c0e7b0c commit c69db29
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 104 deletions.
65 changes: 32 additions & 33 deletions packages/e/eopkg/package.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
name : eopkg

Check warning on line 1 in packages/e/eopkg/package.yml

View workflow job for this annotation

GitHub Actions / Checks

Package release is not 1
version : 4.0.0
release : 5
release : 6
source :
- git|https://github.com/getsolus/eopkg : 7e3aa39e5772a9af01663ac32a903f34fbf00ed7
- git|https://github.com/getsolus/eopkg : 1cb0fe378aa397bba61dee83f8b5c2f465498d05
- git|https://github.com/getsolus/PackageKit.git : dcfcd941d2aa09a1378d738bc98afb4ca52d14df
homepage : https://github.com/getsolus/eopkg
license : GPL-2.0-or-later
Expand All @@ -14,12 +14,6 @@ description: |
It is included at this early stage to make it easier for Solus Staff to test and debug it.
If you switch back and forth between using eopkg4-bin (py3) and legacy eopkg (py2),
do the following for the version you are switching _to_:
- run `sudo eopkg update-repo --force` or `sudo eopkg4-bin update-repo --force` (regenerates the pickle cache)
- run `sudo eopkg rdb` or `sudo eopkg4-bin rdb` (keeps package databases in sync)
Experienced contributors with packaging and bugreporting experience are welcome to help us test and report (non-duplicate!) problems here:
https://github.com/getsolus/packages/issues/1316
Expand All @@ -41,17 +35,22 @@ builddeps :
- python-zstandard
- tree
rundeps :
- ^eopkg-symlinks:
- eopkg
#- ^eopkg-symlinks:
# - eopkg
- ^python-eopkg :
- iksemel
- ^python-eopkg-symlinks:
- python-eopkg
#- ^python-eopkg-symlinks:
# - python-eopkg
setup : |
# NOTE: please leave the grep commands in for visibility purposes during build. Thanks. /ermo
# get rid of any existing lines w/git ref version info
sed "/__version__ += /d" -i pisi/__init__.py
grep -Hn version pisi/__init__.py
# append the git ref to __version__ on a new line
gawk -i inplace 'BEGIN { "git rev-parse --short HEAD" | getline gitref } { print }; /__version__ = / { printf "%s %s\n", $1, "+= \" (" gitref ")\"" }' pisi/__init__.py
gawk -i inplace \
'BEGIN { "git rev-parse --short HEAD" | getline gitref } { print };
/__version__ = / { printf "%s %s\n", $1, "+= \" (" gitref ")\"" };' \
pisi/__init__.py
grep -Hn version pisi/__init__.py
%python3_setup
Expand Down Expand Up @@ -90,19 +89,19 @@ install : |
# If we want to make eopkg.bin the default at some point
# (patterned into the eopkg-symlinks package)
ln -srv $installdir/usr/bin/eopkg.bin $installdir/usr/bin/eopkg
ln -srv $installdir/usr/bin/eopkg.bin $installdir/usr/bin/eopkg-cli
#ln -srv $installdir/usr/bin/eopkg.bin $installdir/usr/bin/eopkg
#ln -srv $installdir/usr/bin/eopkg.bin $installdir/usr/bin/eopkg-cli
# If we want to make python-eopkg take over some pisi symlinks at some point
# (patterned into the python-eopkg-symlinks package)
test -f $installdir/usr/bin/check-newconfigs.py3 \
&& ln -srv $installdir/usr/bin/check-newconfigs.py3 $installdir/usr/bin/check-newconfigs.py
ln -srv $installdir/usr/bin/lseopkg.py3 $installdir/usr/bin/lseopkg
ln -srv $installdir/usr/bin/lseopkg.py3 $installdir/usr/bin/lspisi
test -f $installdir/usr/bin/revdep-rebuild.py3 \
&& ln -srv $installdir/usr/bin/revdep-rebuild.py3 $installdir/usr/bin/revdep-rebuild
ln -srv $installdir/usr/bin/uneopkg.py3 $installdir/usr/bin/uneopkg
ln -srv $installdir/usr/bin/uneopkg.py3 $installdir/usr/bin/unpisi
#test -f $installdir/usr/bin/check-newconfigs.py3 \
# && ln -srv $installdir/usr/bin/check-newconfigs.py3 $installdir/usr/bin/check-newconfigs.py
#ln -srv $installdir/usr/bin/lseopkg.py3 $installdir/usr/bin/lseopkg
#ln -srv $installdir/usr/bin/lseopkg.py3 $installdir/usr/bin/lspisi
#test -f $installdir/usr/bin/revdep-rebuild.py3 \
# && ln -srv $installdir/usr/bin/revdep-rebuild.py3 $installdir/usr/bin/revdep-rebuild
#ln -srv $installdir/usr/bin/uneopkg.py3 $installdir/usr/bin/uneopkg
#ln -srv $installdir/usr/bin/uneopkg.py3 $installdir/usr/bin/unpisi
# install the nuitka-compiled eopkg PackageKit backend
install -Dm0755 $workdir/eopkgBackend.bin $installdir/usr/share/PackageKit/helpers/eopkg/eopkgBackend.bin
Expand All @@ -121,13 +120,13 @@ patterns :
- /usr/bin/*.py3
# Together, these two symlink patterns comprise the full list of pisi py2 /usr/bin binaries/symlinks
# -- some may not yet be available in the present packages yet...
- ^python-eopkg-symlinks :
- /usr/bin/check-newconfigs.py
- /usr/bin/lseopkg
- /usr/bin/lspisi
- /usr/bin/revdep-rebuild
- /usr/bin/uneopkg
- /usr/bin/unpisi
- symlinks :
- /usr/bin/eopkg
- /usr/bin/eopkg-cli
#- ^python-eopkg-symlinks :
# - /usr/bin/check-newconfigs.py
# - /usr/bin/lseopkg
# - /usr/bin/lspisi
# - /usr/bin/revdep-rebuild
# - /usr/bin/uneopkg
# - /usr/bin/unpisi
#- symlinks :
# - /usr/bin/eopkg
# - /usr/bin/eopkg-cli
73 changes: 2 additions & 71 deletions packages/e/eopkg/pspec_x86_64.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,6 @@ WARNING: This package is **unsupported**, **experimental and may **break your sy

It is included at this early stage to make it easier for Solus Staff to test and debug it.

If you switch back and forth between using eopkg4-bin (py3) and legacy eopkg (py2),
do the following for the version you are switching _to_:

- run `sudo eopkg update-repo --force` or `sudo eopkg4-bin update-repo --force` (regenerates the pickle cache)
- run `sudo eopkg rdb` or `sudo eopkg4-bin rdb` (keeps package databases in sync)

Experienced contributors with packaging and bugreporting experience are welcome to help us test and report (non-duplicate!) problems here:

https://github.com/getsolus/packages/issues/1316
Expand All @@ -34,12 +28,6 @@ WARNING: This package is **unsupported**, **experimental and may **break your sy

It is included at this early stage to make it easier for Solus Staff to test and debug it.

If you switch back and forth between using eopkg4-bin (py3) and legacy eopkg (py2),
do the following for the version you are switching _to_:

- run `sudo eopkg update-repo --force` or `sudo eopkg4-bin update-repo --force` (regenerates the pickle cache)
- run `sudo eopkg rdb` or `sudo eopkg4-bin rdb` (keeps package databases in sync)

Experienced contributors with packaging and bugreporting experience are welcome to help us test and report (non-duplicate!) problems here:

https://github.com/getsolus/packages/issues/1316
Expand All @@ -62,12 +50,6 @@ WARNING: This package is **unsupported**, **experimental and may **break your sy

It is included at this early stage to make it easier for Solus Staff to test and debug it.

If you switch back and forth between using eopkg4-bin (py3) and legacy eopkg (py2),
do the following for the version you are switching _to_:

- run `sudo eopkg update-repo --force` or `sudo eopkg4-bin update-repo --force` (regenerates the pickle cache)
- run `sudo eopkg rdb` or `sudo eopkg4-bin rdb` (keeps package databases in sync)

Experienced contributors with packaging and bugreporting experience are welcome to help us test and report (non-duplicate!) problems here:

https://github.com/getsolus/packages/issues/1316
Expand Down Expand Up @@ -482,60 +464,9 @@ https://github.com/getsolus/packages/issues/1316
<Path fileType="library">/usr/lib/python3.11/site-packages/pisi/version.py</Path>
</Files>
</Package>
<Package>
<Name>python-eopkg-symlinks</Name>
<Summary xml:lang="en">UNSUPPORTED &amp; EXPERIMENTAL (reserved for Solus Staff testing)</Summary>
<Description xml:lang="en">
WARNING: This package is **unsupported**, **experimental and may **break your system!!!**

It is included at this early stage to make it easier for Solus Staff to test and debug it.

If you switch back and forth between using eopkg4-bin (py3) and legacy eopkg (py2),
do the following for the version you are switching _to_:

- run `sudo eopkg update-repo --force` or `sudo eopkg4-bin update-repo --force` (regenerates the pickle cache)
- run `sudo eopkg rdb` or `sudo eopkg4-bin rdb` (keeps package databases in sync)

Experienced contributors with packaging and bugreporting experience are welcome to help us test and report (non-duplicate!) problems here:

https://github.com/getsolus/packages/issues/1316
</Description>
<RuntimeDependencies>
<Dependency releaseFrom="5">python-eopkg</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin/lseopkg</Path>
<Path fileType="executable">/usr/bin/lspisi</Path>
<Path fileType="executable">/usr/bin/uneopkg</Path>
<Path fileType="executable">/usr/bin/unpisi</Path>
</Files>
</Package>
<Package>
<Name>eopkg-symlinks</Name>
<Summary xml:lang="en">UNSUPPORTED &amp; EXPERIMENTAL (reserved for Solus Staff testing)</Summary>
<Description xml:lang="en">
WARNING: This package is **unsupported**, **experimental and may **break your system!!!**

It is included at this early stage to make it easier for Solus Staff to test and debug it.

If you switch back and forth between using eopkg4-bin (py3) and legacy eopkg (py2),
do the following for the version you are switching _to_:

- run `sudo eopkg update-repo --force` or `sudo eopkg4-bin update-repo --force` (regenerates the pickle cache)
- run `sudo eopkg rdb` or `sudo eopkg4-bin rdb` (keeps package databases in sync)

Experienced contributors with packaging and bugreporting experience are welcome to help us test and report (non-duplicate!) problems here:

https://github.com/getsolus/packages/issues/1316
</Description>
<Files>
<Path fileType="executable">/usr/bin/eopkg</Path>
<Path fileType="executable">/usr/bin/eopkg-cli</Path>
</Files>
</Package>
<History>
<Update release="5">
<Date>2024-05-22</Date>
<Update release="6">
<Date>2024-06-08</Date>
<Version>4.0.0</Version>
<Comment>Packaging update</Comment>
<Name>Rune Morling</Name>
Expand Down

0 comments on commit c69db29

Please sign in to comment.