Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

libimobiledevice: update packages to the latest git version 2024-09-16 #25058

Merged
merged 9 commits into from
Dec 12, 2024

Conversation

httpstorm
Copy link
Contributor

@httpstorm httpstorm commented Sep 30, 2024

Some important usbmuxd patches are now upstream, so update to the latest git version.
While at it, also update libimobiledevice which includes a security fix.

usbmuxd

  • revert default mode back to 1
  • add support for modes 4 and 5
  • correctly display 10 Gbps USB 3.x
  • use more reliable macros to print --version output

libimobiledevice

  • add detection and note about passcode requirement for iOS 16.1
  • add support for iOS 17+ Personalized Developer Disk image mounting
  • fix heap buffer overflow in ideviceimagemounter
  • tools/afcclient: add missing time.h header
  • depends on libtatsu, which depends on libcurl

libirecovery

  • Support Apple Watch Series 10 and iPhone 16 models
  • Add iPad Air (M2) and iPad Pro (M4) models

idevicerestore

  • initial support for iPhone 16 restore
  • depends on libtatsu, updated libirecovery

libtatsu

  • required by new versions of libimobiledevice and idevicerestore
  • depends on libcurl

libideviceactivation

  • fix compilation with full NLS

Maintainer: @neheb
Compile tested:

  • Marvell EBU Armada, Marvell Armada 37x/38x/XP, Linksys WRT3200ACM, main

Run tested:

  • Marvell EBU Armada, Marvell Armada 37x/38x/XP, Linksys WRT3200ACM

Please let me know if any changes are needed.
@nbd168 @Ansuel @robimarko @hauke @1715173329 @jow-
@Forst

Comment on lines +49 to +51
define Package/libtatsu/description
$(call Package/libtatsu/Default/description)
endef
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why this is done like this?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because I followed an existing pattern: I copied the Makefile from libimobiledevice-glue and adapted it for the new libtatsu library. I don't have a good experience with the make files, so any suggestions are welcome. Last time I added libimobiledevice-glue, it was accepted, so if you like, once some changes are suggested, I can also apply them there.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unfortunately, thats also wrong and it should not be accepted like that. There is no point having "Default" and then call it. Copying something without knowing what it does, whats it for, its not good approach, though.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I figured that the "Default" is used for convenience in other Makefiles that define multiple packages. I applied the changes you suggested.


include $(INCLUDE_DIR)/package.mk

define Package/libtatsu/Default
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is no reason to have Default here.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I applied the changes you suggested.

PKG_SOURCE_URL:=https://github.com/libimobiledevice/libtatsu/releases/download/$(PKG_VERSION)
PKG_HASH:=4f69452d23e50e0ffbe844110e6ab6a900d080e051fbda3b7d595f679dee9bc5

PKG_MAINTAINER:=Rosen Penev <[email protected]>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I doubt that @neheb knows about this

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should I leave it as @neheb or change to what? He is currently set as the maintainer for all libimobiledevice packages, and on my previous PR, the new libimobiledevice-glue library was accepted.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thats up to him, you can not add new packages unless people are aware of it.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Kind reminder, because usually it is not a good idea to add new packages and give maintainership to someone else.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don’t want maintainership. You can change it.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@neheb @BKPepe
Thanks for the follow up. Can you please advise what is the proper thing to do?

  1. Assign myself as maintainer
  2. Ask someone else
  3. Leave maintainer empty
  4. Other?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@neheb @BKPepe
I assigned myself as a maintainer for libtatsu. Please let me know if you prefer assigning someone else.

@httpstorm httpstorm force-pushed the usbmuxd-2024-09-16 branch 2 times, most recently from b133c40 to b55ce25 Compare October 1, 2024 07:57
@httpstorm
Copy link
Contributor Author

@BKPepe
Thank you for the help! Local build successful. Is there anything else I should change? What about PKG_MAINTAINER?

SECTION:=libs
CATEGORY:=Libraries
SUBMENU:=libimobiledevice
TITLE:=Common code used by libimobiledevice.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
TITLE:=Common code used by libimobiledevice.
TITLE:=Common code used by libimobiledevice

@httpstorm
Copy link
Contributor Author

@neheb @BKPepe @Ansuel @robimarko @1715173329 @jow-
Rebased on master, updated some of the packages. Added an update to libirecovery, because the change log for idevicerestore states that it depends on the new version.
I assigned myself as a maintainer for libtatsu. Please let me know if you prefer assigning someone else.

@neheb
Copy link
Contributor

neheb commented Nov 14, 2024

libideviceactivation needs nls.mk to compile with full NLS.

@httpstorm
Copy link
Contributor Author

@neheb

libideviceactivation needs nls.mk to compile with full NLS.

I included nls.mk, please check. I also added tag Reported-by, and updated to the latest git.
Are there any other libmobiledevice packages that need nls.mk?
For me everything builds, but my sources are 5-6 days old and I don't know how to enable full NLS.

required to update usbmuxd

Signed-off-by: Georgi Valkov <[email protected]>
Notable changes
- revert default mode back to 1
- add support for modes 4 and 5
- correctly display 10 Gbps USB 3.x
- use more reliable macros to print --version output
- requires libplist 2.6.0

Signed-off-by: Georgi Valkov <[email protected]>
required by new versions of libimobiledevice and idevicerestore
depends on libcurl

Signed-off-by: Georgi Valkov <[email protected]>
Notable changes
- add detection and note about passcode requirement for iOS 16.1
- add support for iOS 17+ Personalized Developer Disk image mounting
- fix heap buffer overflow in ideviceimagemounter
- tools/afcclient: add missing time.h header
- depends on libtatsu, which depends on libcurl

Signed-off-by: Georgi Valkov <[email protected]>
Signed-off-by: Georgi Valkov <[email protected]>
Notable changes
- initial support for iPhone 16 restore
- depends on libtatsu

Signed-off-by: Georgi Valkov <[email protected]>
nls.mk is needed.

Reported-by: Rosen Penev <[email protected]>
Signed-off-by: Georgi Valkov <[email protected]>
@neheb neheb merged commit 12f3743 into openwrt:master Dec 12, 2024
12 checks passed
@httpstorm
Copy link
Contributor Author

Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants