The first app of its kind: seamless, on-device music and ringtone injection for iOS. Bypass iTunes and manage your native library directly. Auto-fetch metadata, organize playlists, and keep your files clean. The true local music experience is here.
399
stars
88
commits
Swift
primary language
Sep 9, 2026
updated
Say goodbye to iTunes sync!
ByeTunes is a native iOS app that lets you inject music (MP3, M4A, FLAC, WAV) and ringtones directly into your device's media library—without needing a computer connection for every sync. It communicates directly with the iOS media database, giving you the power to manage your music on your terms.
.m4r and .mp3 auto-conversion).To build ByeTunes yourself, you'll need a Mac with Xcode.
ByeTunes relies on idevice (a libimobiledevice alternative) to talk to the iOS internal file system. These files are NOT included in this repository for licensing/size reasons.
To compile the app, you need to obtain these two files and place them in the MusicManager/ directory:
libidevice_ffi.a (Static Library)idevice.h (Header File)You can find idevice and compile it from here: https://github.com/jkcoxson/idevice
If you don't have these files, the project will not compile.
Install Rust:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Add the ios Arch:
rustup target add aarch64-apple-ios
Install Xcode Command Line Tools if you don't have it already installed:
xcode-select --install
Clone the repo:
git clone https://github.com/jkcoxson/idevice
Set a deployment target:
export IPHONEOS_DEPLOYMENT_TARGET=xx.x
Run the cargo build:
cargo build --release --package idevice-ffi --target aarch64-apple-ios
Inside the idevice folder find: idevice.h and libidevice_ffi.a. Move them inside the project in Xcode, make sure you create Bridging-Header.h Inside your Xcode project and make sure you add:
#import "idevice.h"
In Project Settings > Build Phases > Link Binary With Libraries, make sure libidevice_ffi.a is listed.
LocalDevVPN:
Pairing:
pairing file.pairing file.Add Music:
Ringtones:
asCopy: true) to ensure file importing works correctly without crashing.Found a bug? We'd love to fix it!
Created with ❤️ by EduAlexxis
87 commits
1 commits
Swift
100.0%
The first app of its kind: seamless, on-device music and ringtone injection for iOS. Bypass iTunes and manage your native library directly. Auto-fetch metadata, organize playlists, and keep your files clean. The true local music experience is here.
399
stars
88
commits
Swift
primary language
Sep 9, 2026
updated
Say goodbye to iTunes sync!
ByeTunes is a native iOS app that lets you inject music (MP3, M4A, FLAC, WAV) and ringtones directly into your device's media library—without needing a computer connection for every sync. It communicates directly with the iOS media database, giving you the power to manage your music on your terms.
.m4r and .mp3 auto-conversion).To build ByeTunes yourself, you'll need a Mac with Xcode.
ByeTunes relies on idevice (a libimobiledevice alternative) to talk to the iOS internal file system. These files are NOT included in this repository for licensing/size reasons.
To compile the app, you need to obtain these two files and place them in the MusicManager/ directory:
libidevice_ffi.a (Static Library)idevice.h (Header File)You can find idevice and compile it from here: https://github.com/jkcoxson/idevice
If you don't have these files, the project will not compile.
Install Rust:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Add the ios Arch:
rustup target add aarch64-apple-ios
Install Xcode Command Line Tools if you don't have it already installed:
xcode-select --install
Clone the repo:
git clone https://github.com/jkcoxson/idevice
Set a deployment target:
export IPHONEOS_DEPLOYMENT_TARGET=xx.x
Run the cargo build:
cargo build --release --package idevice-ffi --target aarch64-apple-ios
Inside the idevice folder find: idevice.h and libidevice_ffi.a. Move them inside the project in Xcode, make sure you create Bridging-Header.h Inside your Xcode project and make sure you add:
#import "idevice.h"
In Project Settings > Build Phases > Link Binary With Libraries, make sure libidevice_ffi.a is listed.
LocalDevVPN:
Pairing:
pairing file.pairing file.Add Music:
Ringtones:
asCopy: true) to ensure file importing works correctly without crashing.Found a bug? We'd love to fix it!
Created with ❤️ by EduAlexxis
87 commits
1 commits
Swift
100.0%