Merge branch 's1dds-master'

* s1dds-master:
  Update postrm
  Update postinst
  Update postinst
  removed cache setup
  fix cache setup
  Use default theos src and sdks
  build script and github actions for rootful and rootless builds
  Support for rootless JB till iOS 16.5 (tested) (screendumpLowFrame)
This commit is contained in:
Subho Halder 2023-12-18 19:51:03 +05:30
commit aad225ee90
No known key found for this signature in database
GPG Key ID: 4E4FDFECF4E3EE35
12 changed files with 119 additions and 16 deletions

49
.github/workflows/ci.yaml vendored Normal file
View File

@ -0,0 +1,49 @@
name: Theos CI
on:
release:
types:
- created
jobs:
build:
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
submodules: recursive
- name: Theos Setup (Setup)
uses: NyaMisty/theos-action@master
- name: Get tag
if: ${{ startsWith(github.ref, 'refs/tags/') }}
id: tag
uses: dawidd6/action-get-tag@v1
- name: Build Release package - Rootful
if: ${{ startsWith(github.ref, 'refs/tags/') }}
run: |
cd screendumpLowFrame
make clean
TAGNAME=${{ steps.tag.outputs.tag }}
make package FINALPACKAGE=1 PACKAGE_VERSION=${TAGNAME#v}-rootful
- name: Build Release package - Rootless
if: ${{ startsWith(github.ref, 'refs/tags/') }}
run: |
cd screendumpLowFrame
make clean
TAGNAME=${{ steps.tag.outputs.tag }}
make package THEOS_PACKAGE_SCHEME=rootless FINALPACKAGE=1 PACKAGE_VERSION=${TAGNAME#v}-rootless
- name: Release
uses: softprops/action-gh-release@v1
if: ${{ startsWith(github.ref, 'refs/tags/') }}
with:
files: |
${{ github.workspace }}/screendumpLowFrame/packages/*.deb
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

1
.gitignore vendored
View File

@ -1 +1,2 @@
.theos
packages

View File

@ -1,7 +1,12 @@
TARGET = iphone:14.4:10.0
TARGET = iphone:16.5:14.0
include $(THEOS)/makefiles/common.mk
ifeq ($(THEOS_PACKAGE_SCHEME),rootless)
PACKAGE_BUILDNAME := rootless
else
PACKAGE_BUILDNAME := rootful
endif
TOOL_NAME = screendumpd
$(TOOL_NAME)_FILES = main.mm
@ -23,3 +28,14 @@ include $(THEOS_MAKE_PATH)/tool.mk
SUBPROJECTS += hooks
include $(THEOS_MAKE_PATH)/aggregate.mk
ifeq ($(THEOS_PACKAGE_SCHEME),rootless)
after-screendumpd-stage::
$(ECHO_NOTHING) rm $(THEOS_STAGING_DIR)/Library/LaunchDaemons/com.julioverne.screendumpd.plist$(ECHO_END)
$(ECHO_NOTHING) mv $(THEOS_STAGING_DIR)/Library/LaunchDaemons/com.julioverne.screendumpd.rootless.plist $(THEOS_STAGING_DIR)/Library/LaunchDaemons/com.julioverne.screendumpd.plist$(ECHO_END)
$(ECHO_NOTHING)$(FAKEROOT) chown root:wheel $(THEOS_STAGING_DIR)/Library/LaunchDaemons/com.julioverne.screendumpd.plist$(ECHO_END)
else
after-screendumpd-stage::
$(ECHO_NOTHING) rm $(THEOS_STAGING_DIR)/Library/LaunchDaemons/com.julioverne.screendumpd.rootless.plist$(ECHO_END)
$(ECHO_NOTHING)$(FAKEROOT) chown root:wheel $(THEOS_STAGING_DIR)/Library/LaunchDaemons/com.julioverne.screendumpd.plist$(ECHO_END)
endif

View File

@ -0,0 +1,11 @@
#!/bin/bash
echo "Building package for ROOTFUL Jailbreak"
make clean
make package FINALPACKAGE=1
echo "Building package for ROOTLESS Jailbreak"
make clean
make package FINALPACKAGE=1 THEOS_PACKAGE_SCHEME=rootless

View File

@ -1,7 +1,8 @@
TARGET = iphone:14.4:10.0
TARGET = iphone:16.5:14.0
include $(THEOS)/makefiles/common.mk
TWEAK_NAME = screendumpbb
$(TWEAK_NAME)_FILES = Tweak.xm
$(TWEAK_NAME)_FRAMEWORKS := IOSurface IOKit

View File

@ -2,11 +2,11 @@
#include <substrate.h>
#include <rfb/rfb.h>
#import <notify.h>
#import <UIKit/UIKit.h>
#import <rootless.h>
#undef NSLog
#define kSettingsPath @"//var/mobile/Library/Preferences/com.cosmosgenius.screendump.plist"
extern "C" UIImage* _UICreateScreenUIImage();
static BOOL isEnabled;

View File

@ -1,6 +1,6 @@
Package: com.cosmosgenius.screendump13
Name: screendump
Depends: mobilesubstrate, preferenceloader
Depends: preferenceloader
Architecture: iphoneos-arm
Description: VNC for ios
Maintainer: Sharat M R <cosmosgenius@gmail.com>

View File

@ -1,6 +1,11 @@
#!/bin/sh
launchctl unload //Library/LaunchDaemons/com.julioverne.screendumpd.plist
launchctl load //Library/LaunchDaemons/com.julioverne.screendumpd.plist
if [ -L "/var/jb" ]; then
launchctl unload /var/jb/Library/LaunchDaemons/com.julioverne.screendumpd.plist
launchctl load /var/jb/Library/LaunchDaemons/com.julioverne.screendumpd.plist
else
launchctl unload /Library/LaunchDaemons/com.julioverne.screendumpd.plist
launchctl load /Library/LaunchDaemons/com.julioverne.screendumpd.plist
fi
exit 0;

View File

@ -1,5 +0,0 @@
#!/bin/sh
launchctl unload //Library/LaunchDaemons/com.julioverne.screendumpd.plist
exit 0;

View File

@ -0,0 +1,9 @@
#!/bin/bash
if [ -L "/var/jb" ]; then
launchctl unload /var/jb/Library/LaunchDaemons/com.julioverne.screendumpd.plist
else
launchctl unload /Library/LaunchDaemons/com.julioverne.screendumpd.plist
fi
exit 0;

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.julioverne.screendumpd</string>
<key>ProgramArguments</key>
<array>
<string>/var/jb/usr/libexec/screendumpd</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
</dict>
</plist>

View File

@ -1,9 +1,9 @@
#include <errno.h>
#include <substrate.h>
#include <rfb/rfb.h>
#import <xpc/xpc.h>
#define kSettingsPath @"//var/mobile/Library/Preferences/com.cosmosgenius.screendump.plist"
#import <Foundation/Foundation.h>
#import <IOSurface/IOSurfaceRef.h>
#import <rootless.h>
static bool CCSisEnabled = true;
static NSString *CCSPassword = nil;