View previous topic :: View next topic |
Author |
Message |
imesg Guru
Joined: 12 Jul 2002 Posts: 451
|
Posted: Tue Jun 04, 2024 2:58 pm Post subject: profile update, libffado, python update |
|
|
I updated my profile which a with a custom profile:
Code: |
gentoo:default/linux/amd64/23.0/no-multilib/systemd
gentoo:targets/desktop/gnome
|
I get to the last step:
Code: |
emerge --ask --emptytree @world
|
Code: |
go2 ~ # emerge -a --emptytree @world
* IMPORTANT: 3 news items need reading for repository 'gentoo'.
* Use eselect news read to view new items.
These are the packages that would be merged, in order:
Calculating dependencies... done!
Dependency resolution took 2.83 s (backtrack: 0/20).
!!! The ebuild selected to satisfy "media-libs/libffado[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?]" has unmet requirements.
- media-libs/libffado-2.4.8::gentoo USE="qt5 -debug -test-programs" PYTHON_SINGLE_TARGET="-python3_10 -python3_11"
The following REQUIRED_USE flag constraints are unsatisfied:
exactly-one-of ( python_single_target_python3_10 python_single_target_python3_11 )
(dependency required by "media-video/pipewire-1.0.7::gentoo" [ebuild])
(dependency required by "sys-apps/xdg-desktop-portal-1.18.4::gentoo" [ebuild])
(dependency required by "sys-apps/flatpak-1.14.8::gentoo" [ebuild])
(dependency required by "@selected" [set])
(dependency required by "@world" [argument])
|
Next I add this to package.use:
Code: |
>=media-libs/libffado-2.4.8 python_single_target_python3_11
|
reissue:
Code: |
go2 ~ # emerge -a --emptytree @world
|
and get this:
Code: |
The following USE changes are necessary to proceed:
(see "package.use" in the portage(5) man page for more details)
# required by dev-python/PyQt5-5.15.10-r1::gentoo[dbus]
# required by media-libs/libffado-2.4.8::gentoo[qt5,python_single_target_python3_11]
# required by media-video/pipewire-1.0.7::gentoo[ieee1394]
# required by media-video/wireplumber-0.5.3::gentoo
>=dev-python/dbus-python-1.3.2 python_targets_python3_11
# required by media-libs/libffado-2.4.8::gentoo[qt5,python_single_target_python3_11]
# required by media-video/pipewire-1.0.7::gentoo[ieee1394]
# required by media-video/wireplumber-0.5.3::gentoo
>=dev-python/PyQt5-5.15.10-r1 python_targets_python3_11
# required by media-libs/libffado-2.4.8::gentoo[python_single_target_python3_11]
# required by media-video/pipewire-1.0.7::gentoo[ieee1394]
# required by media-video/wireplumber-0.5.3::gentoo
>=dev-build/scons-4.7.0 python_targets_python3_11
# required by dev-python/PyQt5-5.15.10-r1::gentoo
# required by media-libs/libffado-2.4.8::gentoo[qt5,python_single_target_python3_11]
# required by media-video/pipewire-1.0.7::gentoo[ieee1394]
# required by media-video/wireplumber-0.5.3::gentoo
>=dev-python/gpep517-16 python_targets_python3_11
# required by dev-python/PyQt-builder-1.16.2::gentoo
# required by dev-python/PyQt5-5.15.10-r1::gentoo
# required by media-libs/libffado-2.4.8::gentoo[qt5,python_single_target_python3_11]
# required by media-video/pipewire-1.0.7::gentoo[ieee1394]
# required by media-video/wireplumber-0.5.3::gentoo
>=dev-python/setuptools-70.0.0 python_targets_python3_11
# required by dev-python/PyQt5-5.15.10-r1::gentoo
# required by media-libs/libffado-2.4.8::gentoo[qt5,python_single_target_python3_11]
# required by media-video/pipewire-1.0.7::gentoo[ieee1394]
# required by media-video/wireplumber-0.5.3::gentoo
>=dev-python/PyQt5-sip-12.13.0-r1 python_targets_python3_11
# required by dev-python/PyQt5-5.15.10-r1::gentoo
# required by media-libs/libffado-2.4.8::gentoo[qt5,python_single_target_python3_11]
# required by media-video/pipewire-1.0.7::gentoo[ieee1394]
# required by media-video/wireplumber-0.5.3::gentoo
>=dev-python/PyQt-builder-1.16.2 python_targets_python3_11
# required by dev-python/PyQt5-5.15.10-r1::gentoo
# required by media-libs/libffado-2.4.8::gentoo[qt5,python_single_target_python3_11]
# required by media-video/pipewire-1.0.7::gentoo[ieee1394]
# required by media-video/wireplumber-0.5.3::gentoo
>=dev-python/sip-6.8.3 python_targets_python3_11
# required by dev-python/PyQt-builder-1.16.2::gentoo
# required by dev-python/PyQt5-5.15.10-r1::gentoo
# required by media-libs/libffado-2.4.8::gentoo[qt5,python_single_target_python3_11]
# required by media-video/pipewire-1.0.7::gentoo[ieee1394]
# required by media-video/wireplumber-0.5.3::gentoo
>=dev-python/packaging-24.0 python_targets_python3_11
# required by dev-python/PyQt-builder-1.16.2::gentoo
# required by dev-python/PyQt5-5.15.10-r1::gentoo
# required by media-libs/libffado-2.4.8::gentoo[qt5,python_single_target_python3_11]
# required by media-video/pipewire-1.0.7::gentoo[ieee1394]
# required by media-video/wireplumber-0.5.3::gentoo
>=dev-python/setuptools-scm-8.1.0 python_targets_python3_11
Would you like to add these changes to your config files? [Yes/No]
|
Since default python just changed to version 12 I am leary adding these changes to package.use.
How to proceed?
Thanks |
|
Back to top |
|
|
logrusx Advocate
Joined: 22 Feb 2018 Posts: 2427
|
Posted: Tue Jun 04, 2024 4:19 pm Post subject: Re: profile update, libffado, python update |
|
|
imesg wrote: |
How to proceed?
Thanks |
File a bug for libffado. If you're lucky, it'll get resolved quickly and you won't need to deal with all those package.use entries.
If you can't wait, deffer the update or enable python 3.11 explicitly.
And of course you can put those package.use entries into a temporary file which you can easily delete later when you don't need it, if your package.use is a direcotry. If it isn't, rename the file, create the directory and put the file back in, along with the temporary one.
Best Regards,
Georgi |
|
Back to top |
|
|
imesg Guru
Joined: 12 Jul 2002 Posts: 451
|
Posted: Wed Jun 05, 2024 2:21 am Post subject: Re: profile update, libffado, python update |
|
|
Update:
https://bugs.gentoo.org/929640
Thanks Georgi. I was hoping for a neater solution.
logrusx wrote: | imesg wrote: |
How to proceed?
Thanks |
File a bug for libffado. If you're lucky, it'll get resolved quickly and you won't need to deal with all those package.use entries.
If you can't wait, deffer the update or enable python 3.11 explicitly.
And of course you can put those package.use entries into a temporary file which you can easily delete later when you don't need it, if your package.use is a direcotry. If it isn't, rename the file, create the directory and put the file back in, along with the temporary one.
Best Regards,
Georgi |
|
|
Back to top |
|
|
logrusx Advocate
Joined: 22 Feb 2018 Posts: 2427
|
Posted: Wed Jun 05, 2024 5:32 am Post subject: |
|
|
Well then I recommend going the package.use route. Setting python targets to include python 3.11 globally will result in more rebuilds when you remove it. Plus it's easier to remove a bunch of package.use entries altogether by deleting the file that contains them :)
I tried to transfer the fix from the linked GitHub issue in the bug but it's too much python for me to chew at once.
Best Regrads,
Georgi |
|
Back to top |
|
|
Goverp Advocate
Joined: 07 Mar 2007 Posts: 2179
|
Posted: Thu Jun 06, 2024 6:59 am Post subject: |
|
|
I've hit this one too. For now, I'll disable USE=ieee1394, which is what brung libffado into my system.
(ieee1394 is Firewire support, needed for my old Sony camcorder, but as I'm not doing anything with it at the moment I can wait for a fix.) _________________ Greybeard |
|
Back to top |
|
|
toofastforyahuh Apprentice
Joined: 18 May 2004 Posts: 172
|
Posted: Tue Jun 11, 2024 6:22 pm Post subject: |
|
|
In my case, ieee1394 DV capture is one of the primary functions I require, so removing it is not an option.
However, it seems like only alsa-utils depends on libffado. (Why?)
It seems that adding -ieee1394 to alsa-utils in package.use is a simpler alternative in the meantime.
Has anyone contacted the libffado team about this? |
|
Back to top |
|
|
MaxBuzz n00b
Joined: 19 Jun 2024 Posts: 2
|
Posted: Wed Jun 19, 2024 12:14 pm Post subject: |
|
|
With this patch applied, at least it compiles with Python 3.12. I have not yet tested whether it works, but based on what changes are, the driver part should not stop working.
Basically, we get rid of the imp module (and use importlib), and use proper escape sequences.
Code: |
diff --git a/libffado-2.4.8/SConstruct b/libffado-2.4.8-patched/SConstruct
index 2ea3c94..af5236b 100644
--- libffado-2.4.8/SConstruct
+++ libffado-2.4.8-patched/SConstruct
@@ -977,7 +977,7 @@ else:
# Create a tags-file for easier emacs/vim-source-browsing
# I don't know if the dependency is right...
#
-findcommand = "find . \( -path \"*.h\" -o -path \"*.cpp\" -o -path \"*.c\" \) \! -path \"*.svn*\" \! -path \"./doc*\" \! -path \"./cache*\""
+findcommand = "find . \\( -path \"*.h\" -o -path \"*.cpp\" -o -path \"*.c\" \\) \\! -path \"*.svn*\" \\! -path \"./doc*\" \\! -path \"./cache*\""
env.Command( "tags", "", findcommand + " |xargs ctags" )
env.Command( "TAGS", "", findcommand + " |xargs etags" )
env.AlwaysBuild( "tags", "TAGS" )
diff --git a/libffado-2.4.8/admin/pyuic.py b/libffado-2.4.8-patched/admin/pyuic.py
index e0980b0..9723b95 100644
--- libffado-2.4.8/admin/pyuic.py
+++ libffado-2.4.8-patched/admin/pyuic.py
@@ -21,7 +22,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
-import imp
+import importlib
def pyuic_action( target, source, env ):
env.Execute( "pyuic " + str( source[0] ) + " > " + str( target[0] ) )
@@ -32,11 +33,7 @@ def pyuic_string( target, source, env ):
def PyQtCheck( context ):
context.Message( "Checking for pyuic (by checking for the python module pyqtconfig) " )
- ret = True
- try:
- imp.find_module( "pyqtconfig" )
- except ImportError:
- ret = False
+ ret = importlib.util.find_spec( "pyqtconfig" ) is not None
context.Result( ret )
return ret
diff --git a/libffado-2.4.8/admin/pyuic4.py b/libffado-2.4.8-patched/admin/pyuic4.py
index 470ade5..e2d7504 100644
--- libffado-2.4.8/admin/pyuic4.py
+++ libffado-2.4.8-patched/admin/pyuic4.py
@@ -21,7 +22,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
-import imp
+import importlib
def pyuic4_action( target, source, env ):
env.Execute( "pyuic4 " + str( source[0] ) + " > " + str( target[0] ) )
@@ -32,11 +33,7 @@ def pyuic4_string( target, source, env ):
def PyQt4Check( context ):
context.Message( "Checking for pyuic4 (by checking for the python module pyqtconfig) " )
- ret = True
- try:
- imp.find_module( "pyqtconfig" )
- except ImportError:
- ret = False
+ ret = importlib.util.find_spec( "pyqtconfig" ) is not None
context.Result( ret )
return ret
diff --git a/libffado-2.4.8/admin/pyuic5.py b/libffado-2.4.8-patched/admin/pyuic5.py
index 20fed59..e28d3b4 100644
--- libffado-2.4.8/admin/pyuic5.py
+++ libffado-2.4.8-patched/admin/pyuic5.py
@@ -22,7 +23,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
-import imp
+import importlib
def pyuic5_action( target, source, env ):
env.Execute( "pyuic5 " + str( source[0] ) + " > " + str( target[0] ) )
@@ -33,11 +34,7 @@ def pyuic5_string( target, source, env ):
def PyQt5Check( context ):
context.Message( "Checking for pyuic5 (by checking for the python module pyqtconfig) " )
- ret = True
- try:
- imp.find_module( "pyqtconfig" )
- except ImportError:
- ret = False
+ ret = importlib.util.find_spec( "pyqtconfig" ) is not None
context.Result( ret )
return ret
|
|
|
Back to top |
|
|
logrusx Advocate
Joined: 22 Feb 2018 Posts: 2427
|
Posted: Wed Jun 19, 2024 1:41 pm Post subject: |
|
|
MaxBuzz wrote: | With this patch applied, at least it compiles with Python 3.12. I have not yet tested whether it works, but based on what changes are, the driver part should not stop working.
Basically, we get rid of the imp module (and use importlib), and use proper escape sequences.
|
Hello and welcome to the forums!
Have you considered filing a bug or attaching this patch to an existing bug about libffado?
Best Regards,
Georgi |
|
Back to top |
|
|
MaxBuzz n00b
Joined: 19 Jun 2024 Posts: 2
|
Posted: Wed Jun 19, 2024 8:07 pm Post subject: |
|
|
logrusx wrote: |
Have you considered filing a bug or attaching this patch to an existing bug about libffado?
|
Yes, I attached the patch to that bug just a few minutes later. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|