iCloud for Linux enables its users the ability to access iCloud services on a Linux machine. This application uses GTK and WebKit to provide a user interface for various iCloud services.
- Access iCloud Mail, Contacts, Calendar, Photos, Drive, Notes, Reminders, Pages, Numbers, Keynote, and Find My iPhone
- Supports both X11 and Wayland environments
- Customizable top-level domain (TLD) via environment variable
- A Linux distribution (tested on openSUSE Tumbleweed 20240711 x86_64 and Ubuntu 20.04)
- Development tools:
gcc
,g++
,cmake
,make
,pkg-config
- Libraries:
gtk+-3.0
,webkit2gtk+-4.0
-
Install dependencies:
On openSUSE:
sudo zypper install gcc gcc-c++ cmake make pkg-config gtk3-devel webkit2gtk4-devel
On Ubuntu:
sudo apt-get update sudo apt-get install -y gcc g++ cmake make pkg-config libgtk-3-dev libwebkit2gtk-4.0-dev
-
Clone the repository:
git clone --recursive https://github.com/cross-platform/icloud-for-linux.git icloud-for-linux-0.22
cd icloud-for-linux-0.22
- Build the application:
mkdir -p build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make install
To run the application, use the following syntax:
./icloud-for-linux <page> <title> # Example: ./nimbus mail "iCloud Mail"
<page>
: The iCloud service you want to accessmail
: iCloud Mailcontacts
: iCloud Contactscalendar
: iCloud Calendarphotos
: iCloud Photosdrive
: iCloud Drivenotes
: iCloud Notesreminders
: iCloud Reminderspages
: iCloud Pagesnumbers
: iCloud Numberskeynote
: iCloud Keynotefindmyiphone
: Find My iPhone
<title>
: The window title
You can customize the top-level domain (TLD) used in the URLs by setting the ICLOUD_TLD
environment variable:
export ICLOUD_TLD=".co.uk"
./nimbus mail "iCloud Mail"
To package iCloud for Linux for openSUSE, you can use the provided icloud-for-linux.spec
file.
- Set up the RPM build environment:
sudo zypper install rpmdevtools rpm-build rpmlint
rpmdev-setuptree
- Copy the source files:
mkdir -p ~/rpmbuild/SOURCES
tar czf ~/rpmbuild/SOURCES/icloud-for-linux-0.22.tar.gz -C ../.. icloud-for-linux-0.22
cp icloud-for-linux.spec ~/rpmbuild/SPECS/
- Build the RPM package:
rpmbuild -ba --verbose ~/rpmbuild/SPECS/icloud-for-linux.spec
If you would like to contribute to this project, please feel free to fork the repository and submit a pull request.