Compare commits

...

12 Commits

Author SHA1 Message Date
Georgi Valkov 211ab80f62
Merge 30e8bc1adf into 4628b6bd43 2024-04-26 23:20:54 +00:00
Georgi Valkov 30e8bc1adf
libideviceactivation: add package from git
Manage the activation of Apple iOS devices

There have been no releases since 2020-06-16.
Use the latest git 6925d58ef7994168fb9585aa6f48421149982329

Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
2024-04-27 02:20:31 +03:00
Georgi Valkov 944572908c
ideviceinstaller: add package from git
Manage apps and app archives on iOS devices

There have been no releases since 2020-06-16.
Use the latest git 22872c3571b8d2646a9fbb74ec1d7e186941053d

Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
2024-04-27 02:20:31 +03:00
Georgi Valkov 7bbabedf92
ifuse: add package from git
Fuse filesystem access to iOS devices

There have been no releases since 2020-06-16.
Use the latest git 814a0e38050850937debd697fcfe6eca3de1b66f

Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
2024-04-27 02:20:31 +03:00
Georgi Valkov 8252a08d8a
idevicerestore: update to the latest git version
There have been no releases since 2020-06-16.
Update to the latest git 6d40d0ab626eb0ffee4f005b7fdc915bc561deb9

Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
2024-04-27 02:20:31 +03:00
Georgi Valkov 112ad1cdef
libirecovery: update to 1.2.0
Switched to GitHub tarballs as they are now available.

Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
2024-04-27 02:20:31 +03:00
Georgi Valkov b125bc4b9f
usbmuxd: update to the latest git version
There have been no releases since 2020-06-16.
Update to the latest git 360619c5f721f93f0b9d8af1a2df0b926fbcf281
Fix: --version did not print the version.

[1] changes to mode 3 CDC NCM by default. Revert back to mode 1:
Originally mode 1 was used, where a tethered iPhone appears as an
Ethernet interface, handled by the ipheth driver. This has been the
default for many years and is known to work on iPhone 3G, 4S, 7 Plus,
11 and newer. Since [2] ipheth supports CDC NCM in mode 1, and
configures the iPhone to use it.

In mode 3, the Ethernet interface is handled by kmod-usb-net-cdc-ncm.
This driver has better performance, but now the iPhone does not
provide DHCP or Internet connectivity, so we should revert to mode 1.

Analysing the network traffic, shows that both the iPhone and OpenWRT
are DHCP clients. The iPhone does not act as a DHCP server. I can set
a static IP on OpenWRT and lease 172.20.10.1 to the iPhone. Then I can
ping the iPhone and I have IPv4 connectivity. However the iPhone does
not provide Internet connectivity to OpenWRT. Maybe in mode 3, the
iPhone is a client meant to receive Internet over USB and therefore
it is not a gateway?

Attempts to switch old iPhones, such as 3G and 4S to mode 3 fail.
They remain in mode 1 and work correctly using the ipheth driver.

Comparison, tested on iPhone 7 Plus and 11
- mode 1 eth0 kmod-usb-net-ipheth  264 Mbit/s DHCP server, Internet
- mode 3 usb0 kmod-usb-net-cdc-ncm 304 Mbit/s DHCP client, no Internet

[1] c7a0dd9b82
[2] 680f8738d0

Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
2024-04-27 02:20:31 +03:00
Georgi Valkov a2b380bddb
libimobiledevice: update to the latest git version
There have been no releases since 2020-06-16.
Update to the latest git 5f083426b4ede24b2576f3a56eaf8ac3632c02f7

Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
2024-04-27 02:20:31 +03:00
Georgi Valkov e98a708f1d
libusbmuxd: update to 2.1.0
Switched to GitHub tarballs as they are now available.

Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
2024-04-27 02:20:31 +03:00
Georgi Valkov 434fe7d12b
libimobiledevice-glue: add package 1.2.0
A library with common code used by the libimobiledevice project.

Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
2024-04-27 02:20:31 +03:00
Georgi Valkov da1e959882
libplist: update to 2.4.0
Switched to GitHub tarballs as they are now available.

Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
2024-04-27 02:20:31 +03:00
Paul Donald 4628b6bd43 p910nd: set bidi only if not already set
Closes #23774

Signed-off-by: Paul Donald <newtwen+github@gmail.com>
2024-04-26 14:53:06 -07:00
19 changed files with 352 additions and 158 deletions

View File

@ -0,0 +1,96 @@
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libideviceactivation
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/libimobiledevice/libideviceactivation.git
PKG_SOURCE_DATE:=2024-04-16
PKG_SOURCE_VERSION:=6925d58ef7994168fb9585aa6f48421149982329
PKG_MIRROR_HASH:=671a4feef00d6cc1b81df1e8f305a2e7a26752848b23c8ab60432940f307fe57
PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com>
PKG_LICENSE:=LGPL-2.1-or-later
PKG_LICENSE_FILES:=COPYING.LESSER
PKG_CPE_ID:=cpe:/a:libimobiledevice:libideviceactivation
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk
define Package/libideviceactivation/Default
TITLE:=Manage the activation of Apple iOS devices
URL:=https://www.libimobiledevice.org/
SUBMENU:=libimobiledevice
endef
define Package/libideviceactivation/Default/description
A library to manage the activation process of Apple iOS devices.
This project provides an interface to activate and deactivate iOS devices
by talking to Apple's webservice alongside a command-line utility named
ideviceactivation.
- Status: Implements complete activation and deactivation process
- Compatibility: Supports legacy and latest activation webservice APIs
- Utility: Provides ideviceactivation utility for command-line usage
- Interactive: Requests user input if the activation process uses forms
- Cross-Platform: Tested on Linux, macOS, Windows and Android platforms
endef
define Package/libideviceactivation
$(call Package/libideviceactivation/Default)
SECTION:=libs
CATEGORY:=Libraries
DEPENDS:=+libcurl +libimobiledevice +usbmuxd
LICENSE:=LGPL-2.1-or-later
LICENSE_FILES:=COPYING.LESSER
endef
define Package/libideviceactivation/description
$(call Package/libideviceactivation/Default/description)
endef
define Package/libideviceactivation-utils
$(call Package/libideviceactivation/Default)
SECTION:=utils
CATEGORY:=Utilities
DEPENDS:=+libideviceactivation
LICENSE:=GPL-3.0-or-later
ICENSE_FILES:=COPYING
endef
define Package/libideviceactivation-utils/description
$(call Package/libideviceactivation/Default/description)
This package contains the libideviceactivation utilities.
endef
CONFIGURE_ARGS += \
PACKAGE_VERSION=$(PKG_VERSION)
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/libideviceactivation.h $(1)/usr/include/
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libideviceactivation-1.0.so* $(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libideviceactivation-1.0.pc $(1)/usr/lib/pkgconfig/
endef
define Package/libideviceactivation/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libideviceactivation-1.0.so.* $(1)/usr/lib/
endef
define Package/libideviceactivation-utils/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ideviceactivation $(1)/usr/bin/
endef
$(eval $(call BuildPackage,libideviceactivation))
$(eval $(call BuildPackage,libideviceactivation-utils))

View File

@ -0,0 +1,67 @@
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libimobiledevice-glue
PKG_VERSION:=1.2.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://github.com/libimobiledevice/libimobiledevice-glue/releases/download/$(PKG_VERSION)
PKG_HASH:=ff9cbc240c9780edfa43914a057b86362054053721b65fb04f54a25023b92b62
PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com>
PKG_LICENSE:=LGPL-2.1-or-later
PKG_LICENSE_FILES:=COPYING
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk
define Package/libimobiledevice-glue/Default
TITLE:=Common code used by libimobiledevice.
URL:=https://www.libimobiledevice.org/
SUBMENU:=libimobiledevice
endef
define Package/libimobiledevice-glue/Default/description
libimobiledevice-glue is a library with common code used by the
libraries and tools around the libimobiledevice project.
endef
define Package/libimobiledevice-glue
$(call Package/libimobiledevice-glue/Default)
SECTION:=libs
CATEGORY:=Libraries
DEPENDS:=+libplist
LICENSE:=LGPL-2.1-or-later
LICENSE_FILES:=COPYING
endef
define Package/libimobiledevice-glue/description
$(call Package/libimobiledevice-glue/Default/description)
endef
CONFIGURE_ARGS += \
--disable-static \
--without-cython
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/libimobiledevice-glue $(1)/usr/include/
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libimobiledevice-glue-1.0.so* $(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libimobiledevice-glue-1.0.pc $(1)/usr/lib/pkgconfig/
endef
define Package/libimobiledevice-glue/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libimobiledevice-glue-1.0.so.* $(1)/usr/lib/
endef
$(eval $(call BuildPackage,libimobiledevice-glue))

View File

@ -8,17 +8,19 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libimobiledevice
PKG_VERSION:=1.3.0
PKG_RELEASE:=2
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://www.libimobiledevice.org/downloads
PKG_HASH:=53f2640c6365cd9f302a6248f531822dc94a6cced3f17128d4479a77bd75b0f6
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/libimobiledevice/libimobiledevice.git
PKG_SOURCE_DATE:=2024-04-16
PKG_SOURCE_VERSION:=5f083426b4ede24b2576f3a56eaf8ac3632c02f7
PKG_MIRROR_HASH:=96d63f5a5cdfbc045aa58939fa0ab1ab81739b67b042b86bbbeee75d332e09d5
PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com>
PKG_LICENSE:=LGPL-2.1-or-later
PKG_LICENSE_FILES:=COPYING.LESSER
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
@ -39,7 +41,7 @@ define Package/libimobiledevice
$(call Package/libimobiledevice/Default)
SECTION:=libs
CATEGORY:=Libraries
DEPENDS:=+libplist +libusbmuxd +libopenssl
DEPENDS:=+libplist +libimobiledevice-glue +libusbmuxd +libopenssl
LICENSE:=LGPL-2.1-or-later
LICENSE_FILES:=COPYING.LESSER
endef
@ -64,7 +66,8 @@ endef
CONFIGURE_ARGS += \
--disable-static \
--without-cython
--without-cython \
PACKAGE_VERSION=$(PKG_VERSION)
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include

View File

@ -1,6 +1,6 @@
--- a/common/userpref.c
+++ b/common/userpref.c
@@ -159,7 +159,7 @@ const char *userpref_get_config_dir()
@@ -173,7 +173,7 @@ const char *userpref_get_config_dir()
#ifdef __APPLE__
base_config_dir = strdup("/var/db");
#else

View File

@ -1,21 +0,0 @@
From b5d575c118ecfc2afcb12739433e916527182327 Mon Sep 17 00:00:00 2001
From: Nikias Bassen <nikias@gmx.li>
Date: Fri, 7 Aug 2020 00:50:46 +0200
Subject: [PATCH] mobilebackup2: Set DeviceLink version to 400 to support iOS
14b4+
---
src/mobilebackup2.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/src/mobilebackup2.c
+++ b/src/mobilebackup2.c
@@ -30,7 +30,7 @@
#include "device_link_service.h"
#include "common/debug.h"
-#define MBACKUP2_VERSION_INT1 300
+#define MBACKUP2_VERSION_INT1 400
#define MBACKUP2_VERSION_INT2 0
#define IS_FLAG_SET(x, y) ((x & y) == y)

View File

@ -1,21 +0,0 @@
From d857a83272d921929ae6ccf1fa70d85768840e84 Mon Sep 17 00:00:00 2001
From: Nikias Bassen <nikias@gmx.li>
Date: Mon, 10 Aug 2020 15:39:56 +0200
Subject: [PATCH] screenshotr: Set DeviceLink version to 400 to support iOS
14b4+
---
src/screenshotr.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/src/screenshotr.c
+++ b/src/screenshotr.c
@@ -30,7 +30,7 @@
#include "device_link_service.h"
#include "common/debug.h"
-#define SCREENSHOTR_VERSION_INT1 300
+#define SCREENSHOTR_VERSION_INT1 400
#define SCREENSHOTR_VERSION_INT2 0
/**

View File

@ -1,81 +0,0 @@
From 98056a89648f431759c5fa4ed87c6ea6ba0cdd3f Mon Sep 17 00:00:00 2001
From: Nikias Bassen <nikias@gmx.li>
Date: Thu, 10 Sep 2020 15:12:21 +0200
Subject: [PATCH] debugserver: Fix service startup for iOS 14b4+
---
include/libimobiledevice/debugserver.h | 1 +
include/libimobiledevice/lockdown.h | 1 +
src/debugserver.c | 11 +++++++++--
src/lockdown.c | 5 ++++-
4 files changed, 15 insertions(+), 3 deletions(-)
--- a/include/libimobiledevice/debugserver.h
+++ b/include/libimobiledevice/debugserver.h
@@ -31,6 +31,7 @@ extern "C" {
#include <libimobiledevice/lockdown.h>
#define DEBUGSERVER_SERVICE_NAME "com.apple.debugserver"
+#define DEBUGSERVER_SECURE_SERVICE_NAME DEBUGSERVER_SERVICE_NAME ".DVTSecureSocketProxy"
/** Error Codes */
typedef enum {
--- a/include/libimobiledevice/lockdown.h
+++ b/include/libimobiledevice/lockdown.h
@@ -96,6 +96,7 @@ typedef struct lockdownd_pair_record *lo
struct lockdownd_service_descriptor {
uint16_t port;
uint8_t ssl_enabled;
+ char* identifier;
};
typedef struct lockdownd_service_descriptor *lockdownd_service_descriptor_t;
--- a/src/debugserver.c
+++ b/src/debugserver.c
@@ -80,7 +80,10 @@ LIBIMOBILEDEVICE_API debugserver_error_t
debug_info("Creating base service client failed. Error: %i", ret);
return ret;
}
- service_disable_bypass_ssl(parent, 1);
+
+ if (service->identifier && (strcmp(service->identifier, DEBUGSERVER_SECURE_SERVICE_NAME) != 0)) {
+ service_disable_bypass_ssl(parent, 1);
+ }
debugserver_client_t client_loc = (debugserver_client_t) malloc(sizeof(struct debugserver_client_private));
client_loc->parent = parent;
@@ -95,7 +98,11 @@ LIBIMOBILEDEVICE_API debugserver_error_t
LIBIMOBILEDEVICE_API debugserver_error_t debugserver_client_start_service(idevice_t device, debugserver_client_t * client, const char* label)
{
debugserver_error_t err = DEBUGSERVER_E_UNKNOWN_ERROR;
- service_client_factory_start_service(device, DEBUGSERVER_SERVICE_NAME, (void**)client, label, SERVICE_CONSTRUCTOR(debugserver_client_new), &err);
+ service_client_factory_start_service(device, DEBUGSERVER_SECURE_SERVICE_NAME, (void**)client, label, SERVICE_CONSTRUCTOR(debugserver_client_new), &err);
+ if (err != DEBUGSERVER_E_SUCCESS) {
+ err = DEBUGSERVER_E_UNKNOWN_ERROR;
+ service_client_factory_start_service(device, DEBUGSERVER_SERVICE_NAME, (void**)client, label, SERVICE_CONSTRUCTOR(debugserver_client_new), &err);
+ }
return err;
}
--- a/src/lockdown.c
+++ b/src/lockdown.c
@@ -1307,6 +1307,7 @@ static lockdownd_error_t lockdownd_do_st
*service = (lockdownd_service_descriptor_t)malloc(sizeof(struct lockdownd_service_descriptor));
(*service)->port = 0;
(*service)->ssl_enabled = 0;
+ (*service)->identifier = strdup(identifier);
/* read service port number */
plist_t node = plist_dict_get_item(dict, "Port");
@@ -1511,8 +1512,10 @@ LIBIMOBILEDEVICE_API lockdownd_error_t l
LIBIMOBILEDEVICE_API lockdownd_error_t lockdownd_service_descriptor_free(lockdownd_service_descriptor_t service)
{
- if (service)
+ if (service) {
+ free(service->identifier);
free(service);
+ }
return LOCKDOWN_E_SUCCESS;
}

View File

@ -6,12 +6,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libirecovery
PKG_VERSION:=1.0.0
PKG_RELEASE:=2
PKG_VERSION:=1.2.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://www.libimobiledevice.org/downloads
PKG_HASH:=cda0aba10a5b6fc2e1d83946b009e3e64d0be36912a986e35ad6d34b504ad9b4
PKG_SOURCE_URL:=https://github.com/libimobiledevice/libirecovery/releases/download/$(PKG_VERSION)
PKG_HASH:=74448348f8a68b654015fe1952fdc4e0781db20dcf4e1d85ec97d6f91e95eb14
PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com>
PKG_LICENSE:=LGPL-2.1-or-later
@ -37,7 +37,7 @@ define Package/libirecovery
TITLE:=A library that talks to Apple iBoot/iBSS
SECTION:=libs
CATEGORY:=Libraries
DEPENDS:=+libreadline +libusb-1.0
DEPENDS:=+libimobiledevice-glue +libreadline +libusb-1.0
endef
define Package/libirecovery/description

View File

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libplist
PKG_VERSION:=2.2.0
PKG_RELEASE:=3
PKG_VERSION:=2.4.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://www.libimobiledevice.org/downloads
PKG_HASH:=4a5517e5377ec421df84c586ba85bb4e1d26f11ad203d7d450a907c0156fbd9a
PKG_SOURCE_URL:=https://github.com/libimobiledevice/libplist/releases/download/$(PKG_VERSION)
PKG_HASH:=3f5868ae15b117320c1ff5e71be53d29469d4696c4085f89db1975705781a7cd
PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com>
PKG_CPE_ID:=cpe:/a:libimobiledevice:libplist

View File

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libusbmuxd
PKG_VERSION:=2.0.2
PKG_VERSION:=2.1.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://www.libimobiledevice.org/downloads
PKG_HASH:=cc6a808553da4efa9fa5638be256d5ae020498795d9d260d280b87074e799b20
PKG_SOURCE_URL:=https://github.com/libimobiledevice/libusbmuxd/releases/download/$(PKG_VERSION)
PKG_HASH:=c35bf68f8e248434957bd5b234c389b02206a06ecd9303a7fb931ed7a5636b16
PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com>
PKG_CPE_ID:=cpe:/a:libimobiledevice:libusbmuxd
@ -42,7 +42,7 @@ define Package/libusbmuxd
SECTION:=libs
CATEGORY:=Libraries
TITLE+= library
DEPENDS:=+libplist +libpthread +libxml2 +zlib
DEPENDS:=+libplist +libimobiledevice-glue +libpthread +libxml2 +zlib
PKG_LICENSE:=LGPL-2.1-or-later
PKG_LICENSE_FILES:=COPYING
endef

View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=p910nd
PKG_VERSION:=0.97
PKG_RELEASE:=13
PKG_RELEASE:=14
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=@SF/p910nd

View File

@ -281,8 +281,7 @@ get_and_store_printer_info() {
[ "$DEBUG" ] && echo ${MFG:+MFG=$MFG} ${MDL:+MDL=$MDL} ${CMD:+CMD=$CMD} ${CLS:+CLS=$CLS} ${DES:+DES=$DES} ${SN:+SN=$SN}
[ "$DEBUG" ] && echo 'uci set' for UCI_DEV_CFG_NUMBER: $UCI_DEV_CFG_NUMBER
# Take the USB info as fact: set bidir regardless. It seems to be a source of confusion.
eval "$uqsddu_cmd.bidirectional='$BIDIR'"
[ -z "$(eval "$uqgddu_cmd".bidirectional)" ] && eval "$uqsddu_cmd.bidirectional='$BIDIR'"
[ -z "$(eval "$uqgddu_cmd".port)" ] && eval "$uqsddu_cmd.port='0'"
[ -z "$(eval "$uqgddu_cmd".enabled)" ] && eval "$uqsddu_cmd.enabled='1'"
[ -z "$(eval "$uqgddu_cmd".usbvidpid)" ] && [ -n "$THIS_USB_VIDPID" ] && eval "$uqsddu_cmd.usbvidpid='$THIS_USB_VIDPID'"

View File

@ -0,0 +1,55 @@
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=ideviceinstaller
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/libimobiledevice/ideviceinstaller.git
PKG_SOURCE_DATE:=2024-01-15
PKG_SOURCE_VERSION:=22872c3571b8d2646a9fbb74ec1d7e186941053d
PKG_MIRROR_HASH:=479d8694f36cf6aaa86dd4738d6fca29681b86957e516c317a3a58628f914fda
PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com>
PKG_LICENSE:=GPL-2.0-or-later
PKG_LICENSE_FILES:=COPYING
PKG_CPE_ID:=cpe:/a:libimobiledevice:ideviceinstaller
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk
define Package/ideviceinstaller
SECTION:=utils
CATEGORY:=Utilities
SUBMENU:=libimobiledevice
TITLE:=Manage apps and app archives on iOS devices
URL:=https://www.libimobiledevice.org/
DEPENDS:=+libimobiledevice +libzip
endef
define Package/ideviceinstaller/description
A command-line application to manage apps and app archives on iOS devices.
Allows interacting with the app installation service of an iOS device.
- Status: Install, upgrade, uninstall, and enumerate apps
- Browse: Allows to retrieve a list of installed apps with filter options
- Install: Supports app package, carrier bundle and developer .app directory
- Format: Allows command output in plist, XML, or JSON format
- Compatibility: Supports latest device firmware releases
endef
CONFIGURE_ARGS += \
PACKAGE_VERSION=$(PKG_VERSION)
define Package/ideviceinstaller/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ideviceinstaller $(1)/usr/bin/
endef
$(eval $(call BuildPackage,ideviceinstaller))

View File

@ -6,17 +6,19 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=idevicerestore
PKG_VERSION:=1.0.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://www.libimobiledevice.org/downloads
PKG_HASH:=32712e86315397fd2e8999e77a2d2f790c67f6b4aa50d4d1c64cb2c4609836f7
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/libimobiledevice/idevicerestore.git
PKG_SOURCE_DATE:=2024-04-04
PKG_SOURCE_VERSION:=6d40d0ab626eb0ffee4f005b7fdc915bc561deb9
PKG_MIRROR_HASH:=96906ce58e21914961018adf160459386d322cdec4f66f311555c87bb4b9cbfa
PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com>
PKG_LICENSE:=GPL-2.0-or-later
PKG_LICENSE_FILES:=COPYING
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
@ -37,6 +39,9 @@ define Package/idevicerestore/description
during restore of a firmware to a device.
endef
CONFIGURE_ARGS += \
PACKAGE_VERSION=$(PKG_VERSION)
TARGET_LDFLAGS += $(if $(CONFIG_USE_GLIBC),-lpthread)
define Package/idevicerestore/install

55
utils/ifuse/Makefile Normal file
View File

@ -0,0 +1,55 @@
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=ifuse
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/libimobiledevice/ifuse.git
PKG_SOURCE_DATE:=2023-01-06
PKG_SOURCE_VERSION:=814a0e38050850937debd697fcfe6eca3de1b66f
PKG_MIRROR_HASH:=702eb5f850eca4bb7e5ec82f25026d0a2240041e7c0f614322608ed238ebb789
PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com>
PKG_LICENSE:=LGPL-2.1-or-later
PKG_LICENSE_FILES:=COPYING
PKG_CPE_ID:=cpe:/a:libimobiledevice:ifuse
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk
define Package/ifuse
SECTION:=utils
CATEGORY:=Utilities
SUBMENU:=libimobiledevice
TITLE:=Fuse filesystem access to iOS devices
URL:=https://www.libimobiledevice.org/
DEPENDS:=+fuse-utils +libimobiledevice
endef
define Package/ifuse/description
A fuse filesystem implementation to access the contents of iOS devices.
This project allows mounting various directories of an iOS device locally
using the FUSE file system interface.
- Media: Mount media directory of an iOS device locally
- Apps: Mount sandbox container or document directory of an app
- Jailbreak: Mount root filesystem on jailbroken devices (requires AFC2 service)
- Browse: Allows to retrieve a list of installed file-sharing enabled apps
endef
CONFIGURE_ARGS += \
PACKAGE_VERSION=$(PKG_VERSION)
define Package/ifuse/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ifuse $(1)/usr/bin/
endef
$(eval $(call BuildPackage,ifuse))

View File

@ -8,18 +8,20 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=usbmuxd
PKG_VERSION:=1.1.1
PKG_RELEASE:=2
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://www.libimobiledevice.org/downloads
PKG_HASH:=c0ec9700172bf635ccb5bed98daae607d2925c2bc3597f25706ecd9dfbfd2d9e
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/libimobiledevice/usbmuxd.git
PKG_SOURCE_DATE:=2023-10-11
PKG_SOURCE_VERSION:=360619c5f721f93f0b9d8af1a2df0b926fbcf281
PKG_MIRROR_HASH:=e674ee39abbbae6dea7364be8b8287db2e333d033c226d4b2ed95f2e61a78576
PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com>
PKG_LICENSE:=GPL-2.0-or-later
PKG_LICENSE_FILES:=COPYING.GPLv2
PKG_CPE_ID:=cpe:/a:libimobiledevice:usbmuxd
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
@ -47,7 +49,9 @@ define Package/usbmuxd/conffiles
/etc/lockdown/SystemConfiguration.plist
endef
CONFIGURE_ARGS += --with-systemd
CONFIGURE_ARGS += \
--with-systemd \
PACKAGE_VERSION=$(PKG_VERSION)
define Package/usbmuxd/install
$(INSTALL_DIR) $(1)/etc/hotplug.d/usb

View File

@ -0,0 +1,22 @@
From 906c7bbdd20e8d962f76364dea6e5486220c578b Mon Sep 17 00:00:00 2001
From: Georgi Valkov <gvalkov@gmail.com>
Date: Mon, 22 Apr 2024 23:13:48 +0300
Subject: [PATCH] Revert "usb: Set default mode to 3 to include CDC NCM, and
fix a log message"
This reverts commit c7a0dd9b82633ea347497626282e3051a469ef50.
---
src/usb.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- a/src/usb.c
+++ b/src/usb.c
@@ -691,7 +691,7 @@ static void get_mode_cb(struct libusb_tr
unsigned char *data = libusb_control_transfer_get_data(transfer);
char* desired_mode_char = getenv(ENV_DEVICE_MODE);
- int desired_mode = desired_mode_char ? atoi(desired_mode_char) : 3;
+ int desired_mode = desired_mode_char ? atoi(desired_mode_char) : 1;
int guessed_mode = guess_mode(context->dev, dev);
// Response is 3:3:3:0 for initial mode, 5:3:3:0 otherwise.

View File

@ -0,0 +1,11 @@
--- a/src/main.c
+++ b/src/main.c
@@ -584,7 +584,7 @@ static void parse_opts(int argc, char **
++verbose;
break;
case 'V':
- printf("%s\n", PACKAGE_STRING);
+ printf("%s %s\n", PACKAGE_STRING, PACKAGE_VERSION);
exit(0);
case 'U':
drop_privileges = 1;

View File

@ -1,6 +1,6 @@
--- a/src/conf.c
+++ b/src/conf.c
@@ -126,7 +126,7 @@ const char *config_get_config_dir()
@@ -129,7 +129,7 @@ const char *config_get_config_dir()
#ifdef __APPLE__
base_config_dir = strdup("/var/db");
#else