1
0
Fork 0
mirror of https://github.com/ful1e5/apple_cursor.git synced 2025-06-01 15:58:19 -04:00

Merge pull request from ful1e5/dev

macOS v2.0.1
This commit is contained in:
Abdulkaiz Khatri 2024-05-05 16:16:19 +05:30 committed by GitHub
commit d63b3a0140
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
695 changed files with 7032 additions and 1922 deletions
.github/workflows
.gitignoreCHANGELOG.mdLICENSEREADME.md
bitmaps/macOS-BigSur-White
X_cursor.pngall-scroll.pngbottom_left_corner.pngbottom_right_corner.pngbottom_tee.pngcenter_ptr.pngcontext-menu.pngcopy.pngcross.pngcrossed_circle.pngcrosshair.pngdnd_no_drop.pngdotbox.pnghand1.pnghand2.pngleft_ptr.pngleft_ptr_watch-0001.pngleft_ptr_watch-0002.pngleft_ptr_watch-0003.pngleft_ptr_watch-0004.pngleft_ptr_watch-0005.pngleft_ptr_watch-0006.pngleft_ptr_watch-0007.pngleft_ptr_watch-0008.pngleft_ptr_watch-0009.pngleft_ptr_watch-0010.pngleft_ptr_watch-0011.pngleft_ptr_watch-0012.pngleft_ptr_watch-0013.pngleft_ptr_watch-0014.pngleft_ptr_watch-0015.pngleft_ptr_watch-0016.pngleft_ptr_watch-0017.pngleft_ptr_watch-0018.pngleft_ptr_watch-0019.pngleft_ptr_watch-0020.pngleft_ptr_watch-0021.pngleft_ptr_watch-0022.pngleft_ptr_watch-0023.pngleft_ptr_watch-0024.pngleft_ptr_watch-0025.pngleft_ptr_watch-0026.pngleft_ptr_watch-0027.pngleft_ptr_watch-0028.pngleft_ptr_watch-0029.pngleft_ptr_watch-0030.pngleft_ptr_watch-0031.pngleft_ptr_watch-0032.pngleft_ptr_watch-0033.pngleft_ptr_watch-0034.pngleft_ptr_watch-0035.pngleft_ptr_watch-0036.pngleft_ptr_watch-0037.pngleft_ptr_watch-0038.pngleft_side.pngleft_tee.pnglink.pngll_angle.pnglr_angle.pngmove.pngpencil.pngplus.pngquestion_arrow.pngright_ptr.pngright_tee.pngsb_down_arrow.pngsb_h_double_arrow.pngsb_left_arrow.pngsb_right_arrow.pngsb_up_arrow.pngsb_v_double_arrow.pngtop_side.pngtop_tee.pngul_angle.pngur_angle.pngvertical-text.pngwait-0001.pngwait-0002.pngwait-0003.pngwait-0004.pngwait-0005.pngwait-0006.pngwait-0007.pngwait-0008.pngwait-0009.pngwait-0010.pngwait-0011.pngwait-0012.pngwait-0013.pngwait-0014.pngwait-0015.pngwait-0016.pngwait-0017.pngwait-0018.pngwait-0019.png

View file

@ -19,33 +19,43 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ["3.7", "3.8", "3.9", "3.10"]
os: [ubuntu-latest]
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"]
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
- name: Setup node
uses: actions/setup-node@v4
with:
python-version: ${{ matrix.python-version }}
node-version: 16
- name: Installing pip dependencies
- name: Installing Node Dependencies
run: |
rm -rf node_modules yarn.lock
yarn install --frozen-lockfile
continue-on-error: false
- name: Print cbmp version
run: npx cbmp --version
- name: Rendering Bitmaps
run: yarn render
continue-on-error: false
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: 3.11
- name: Installing PyPi Dependencies
run: python -m pip install --upgrade pip clickgen
continue-on-error: false
# https://github.com/returntocorp/semgrep/issues/4794
- name: Fixing 'attr' module error
run: pip install --force-reinstall --upgrade attrs
- name: Print clickgen Version
run: |
clickgen --version
ctgen --version
- name: Building `macOS BigSur` Cursors
run: ctgen build.toml -d 'bitmaps/macOS-BigSur' -n 'macOS-BigSur' -c 'macOS BigSur Cursors'
- name: Building `macOS BigSur White` Cursors
run: ctgen build.toml -d 'bitmaps/macOS-BigSur-White' -n 'macOS-BigSur-White' -c 'macOS BigSur White Cursors'
- name: Building `macOS Monterey` Cursors
run: ctgen build.toml -d 'bitmaps/macOS-Monterey' -n 'macOS-Monterey' -c 'macOS Monterey Cursors'
- name: Building `macOS Monterey White` Cursors
run: ctgen build.toml -d 'bitmaps/macOS-Monterey-White' -n 'macOS-Monterey-White' -c 'macOS Monterey White Cursors'
- name: Build
run: yarn build

1
.gitignore vendored
View file

@ -1,5 +1,6 @@
themes
bin
bitmaps
# --------------------------------------------- Nodejs

View file

@ -7,299 +7,336 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [unreleased]
### Added
## [v2.0.1] - 05 May 2024
- README.md: AUR docs added #91
### :warning: Breaking Changes
- `macOS Monterey` Cursor deprecated
### :warning: Changes for Developers/Package Distributors
> **Note**
> This change applies only to developers and package distributors
- The 'bitmaps' directory has been removed from the git repository. You can now generate the PNG files using `yarn render` or download them from the release assets.
- The `build.toml` file has been removed. Instead, the cursor build configurations are now distributed according to platforms within the `configs` directory:
- `configs/x.build.toml`: Used to build XCursor.
- `configs/win_rg.build.toml`: Used to build regular size Windows cursors.
- `configs/win_lg.build.toml`: Used to build large size Windows cursors.
- `configs/win_xxl.build.toml`: Used to build extra large size Windows cursors.
### What's New?
- feat: Redesign all cursor to latest macOS (Related to #95)
- feat: Added `Person` and `Pin` cursors for Windows
- Official Distributing `16` and `20` XCursors
- Multi Resolution Windows Cursors
- README.md: AUR docs added #91
- Attach version meta-data inside cursor packages
- Using [cbmp v1.1.1](https://github.com/ful1e5/cbmp/tree/v1.1.1) for rendering cursor bitmaps.
### Changes
- Use 'xz' for better compression in `build.sh` script
### Issue Fixes
- Fixed wrong animation #94
- Fixes #98
- Fixes #100
- Closes #95
## [v2.0.0] - 11 October 2021
### Added
- Add cursor top_left_arrow ful1e5/BreezeX_Cursor#10 ful1e5/BreezeX_Cursor#11
- ci: runner updated `linux`, `windows` and `macos`
- Add cursor top_left_arrow ful1e5/BreezeX_Cursor#10 ful1e5/BreezeX_Cursor#11
- ci: runner updated `linux`, `windows` and `macos`
### Changed
- refactor: Removed unnecessary source code
- Some cursors are very blurry on lower sizes fixed #74
- README.md: removed unnecessary colors fixed #81
- README.md: Updated build docs
- fixed #87 Bigger size Windows cursor
- fixed #84 Resolution problem in Windows
- fixed #83 Larger version for Windows
- fixed #82 Wrong hotspot in work.ani (Windows)
- fixed #68 Increasing font sizes in Windows problem
- refactor: Removed unnecessary source code
- Some cursors are very blurry on lower sizes fixed #74
- README.md: removed unnecessary colors fixed #81
- README.md: Updated build docs
- fixed #87 Bigger size Windows cursor
- fixed #84 Resolution problem in Windows
- fixed #83 Larger version for Windows
- fixed #82 Wrong hotspot in work.ani (Windows)
- fixed #68 Increasing font sizes in Windows problem
## [v1.2.3] - 23 November 2021
### Added
- macOSMonterey cursors added 🎊 fixed #66
- Generate master `bitmaps.zip` inside `bin` directory
- `Makefile` binaries targets with variable
- pling docs: size and support info updated
- `bigsur` cursor bitmapper as node package
- New commands added inside `Makefile` for `bitmapper`
- symlink script for `macOSMonterey` svg files
- macOSMonterey cursors added 🎊 fixed #66
- Generate master `bitmaps.zip` inside `bin` directory
- `Makefile` binaries targets with variable
- pling docs: size and support info updated
- `bigsur` cursor bitmapper as node package
- New commands added inside `Makefile` for `bitmapper`
- symlink script for `macOSMonterey` svg files
### Changed
- Removed unnecessary badges from `README.md`
- Simplified README.md (removed emojis)
- sponsor with liberapay
- fixed text cursor state in `xterm` & `vertical-text` (increase border size) #67
- bitmapper `core` as node package
- macOSBigSur .svg files moved to `svgs/bigsur` directory
- Removed unnecessary badges from `README.md`
- Simplified README.md (removed emojis)
- sponsor with liberapay
- fixed text cursor state in `xterm` & `vertical-text` (increase border size) #67
- bitmapper `core` as node package
- macOSBigSur .svg files moved to `svgs/bigsur` directory
## [v1.2.2] - 31 October 2021
### Added
- Rounded pointer tail #63
- make binaries inside sub directory `make preapre`
- Rounded pointer tail #63
- make binaries inside sub directory `make preapre`
### Changed
- soft shadows in all cursors #62
- fixed some cursor size #64
- cursor preview updated
- project description changed
- soft shadows in all cursors #62
- fixed some cursor size #64
- cursor preview updated
- project description changed
## [v1.2.1] - 14 October 2021
### Added
- docs: macOSBigSur-White pling document added to `pling/white.bbcode`.
- quick install links updated inside README.md#quick-install
- docs: macOSBigSur-White pling document added to `pling/white.bbcode`.
- quick install links updated inside README.md#quick-install
### Changed
- docs: pling documents renamed to `pling/` directory.
- build: logging character updated
- docs: pling documents renamed to `pling/` directory.
- build: logging character updated
## [v1.2.0] - 25 August 2021
### Added
- Dark branding
- Multiple config supports inside bitmapper
- `macOSBigSur-White` CI added inside `build.yml`
- Dark branding
- Multiple config supports inside bitmapper
- `macOSBigSur-White` CI added inside `build.yml`
### Changed
- Drop shadow removed from `plus.svg`
- Key colors added inside `.svg` files
- `builder/src` configured as dynamic comment and theme-name
- `builder/Makefile` updated
- `Makefile` with macOSBigSur-White cursor theme
- `PULL_REQUEST_TEMPLATE.md` template updated
- Drop shadow removed from `plus.svg`
- Key colors added inside `.svg` files
- `builder/src` configured as dynamic comment and theme-name
- `builder/Makefile` updated
- `Makefile` with macOSBigSur-White cursor theme
- `PULL_REQUEST_TEMPLATE.md` template updated
## [v1.1.6] - 13 August 2021
### Added
- Support button inside PLING.bbcode product page
- `make prepare` command for preparing binaries
- `pyrightconfig.json` init
- Support button inside PLING.bbcode product page
- `make prepare` command for preparing binaries
- `pyrightconfig.json` init
### Changed
- Removed **clean** target from `builder/Makefile`
- Compact code inside `builder/*`
- Remove `setup.py`
- Builder code moved to `src`
- Import `src` module directly inside `build.py`
- `Makefile` build commands re-arrange with groups
- `crosshair` cursors border added fixed #59
- Removed **clean** target from `builder/Makefile`
- Compact code inside `builder/*`
- Remove `setup.py`
- Builder code moved to `src`
- Import `src` module directly inside `build.py`
- `Makefile` build commands re-arrange with groups
- `crosshair` cursors border added fixed #59
## [v1.1.5] - 21 June 2021
### Added
- Setup target updated inside `builder/Makefile`
- Setup target updated inside `builder/Makefile`
### Changed
- `applbuild` modules relative imports
- Removed `setup.py` from `builder/`
- `applbuild` modules relative imports
- Removed `setup.py` from `builder/`
## [v1.1.4] - 4 April 2021
### Added
- Cursors Preview with **shadows**
- use `clickgen.packagers` for packaging **X11/UNIX** cursors
- typing supports from `clickgen` (v1.1.9)
- Set clickgen version to v1.1.9 inside `builder/setup.py`
- `Pillow` version locked at **8.1.1** by clickgen **v1.1.9**
- **2 Space** format in `bitmapper`
- Sphinx based docsstring in `builder/applbuild`
- Cursors Preview with **shadows**
- use `clickgen.packagers` for packaging **X11/UNIX** cursors
- typing supports from `clickgen` (v1.1.9)
- Set clickgen version to v1.1.9 inside `builder/setup.py`
- `Pillow` version locked at **8.1.1** by clickgen **v1.1.9**
- **2 Space** format in `bitmapper`
- Sphinx based docsstring in `builder/applbuild`
### Changed
- Clean builder cache on every `make` commands
- Apple Cursors builder `applbuild` install as system level
- Removed python3 virtual environment from `builder/Makefile`
- **clean** target fixed in `builder/Makefile`
- Format `svg` files
- Add Shadows / Drop Shadows to arrow cursor fixed #45 (check 29ab657)
- Fixed Windows HiDPi issue #43 (check 7b49e34)
- Clean builder cache on every `make` commands
- Apple Cursors builder `applbuild` install as system level
- Removed python3 virtual environment from `builder/Makefile`
- **clean** target fixed in `builder/Makefile`
- Format `svg` files
- Add Shadows / Drop Shadows to arrow cursor fixed #45 (check 29ab657)
- Fixed Windows HiDPi issue #43 (check 7b49e34)
## [v1.1.3] - 21 February 2021
### Added
- Shadow underneath cursor #41 fixed
- Shadow underneath cursor #41 fixed
### Changed
- Preview with shadows cursors
- Preview with shadows cursors
## [v1.1.2] - 15 February 2021
### Added
- `reinstall` target added in project **makeFile**
- `reinstall` target added in project **makeFile**
### Changed
- Dynamic make install
- #39 Corner resize cursors are inverted fixed
- Dynamic make install
- #39 Corner resize cursors are inverted fixed
## [v1.1.1] - 9 February 2021
### Changed
- Cursor is not in expected position fixed #37
- Cursor is not in expected position fixed #37
## [v1.1.0] - 7 February 2021
### Added
- Smooth animation of `Animated Cursors`
- Auto-Package by `clickgen`
- Customize & Build with `make`
- Organized project
- Builder with `setup.py`
- Cursors design #33 **fixed**
- Smooth animation of `Animated Cursors`
- Auto-Package by `clickgen`
- Customize & Build with `make`
- Organized project
- Builder with `setup.py`
- Cursors design #33 **fixed**
### Changed
- Variable length frames render **fixed**
- Minimum frames rendering added.
- Windows cursors are renamed
- cursor's config moved to `builder/applbuild/constants.py`
- Variable length frames render **fixed**
- Minimum frames rendering added.
- Windows cursors are renamed
- cursor's config moved to `builder/applbuild/constants.py`
## [v1.0.6] - 1 November 2020
### Added
- `left_ptr_watch` with **blue pinwheel**
- `left_ptr_watch` with **blue pinwheel**
### Changed
- `build.log` removed feature in **clickgen v1.1.8**
- Repack Windows cursors
- Removed npm scripts & documentation (`yon` package removed)
- npm dependencies got upgraded (**dependabot** 🤖 security warning)
- `build.log` removed feature in **clickgen v1.1.8**
- Repack Windows cursors
- Removed npm scripts & documentation (`yon` package removed)
- npm dependencies got upgraded (**dependabot** 🤖 security warning)
## [v1.0.6] - 1 November 2020
### Added
- `left_ptr_watch` with **blue pinwheel**
- `left_ptr_watch` with **blue pinwheel**
### Changed
- Pixel match ratio set to **0.1** in `src\utils\matchImages.ts`
- Symlinks of `watch` cursor removed
- `AppStarting.ani` changed
- `PLING.bbcode` missing content fix
- Cursor **preview** updated
- `hand2` lines fixed.(from pling.com @peotincelogy)
- Pixel match ratio set to **0.1** in `src\utils\matchImages.ts`
- Symlinks of `watch` cursor removed
- `AppStarting.ani` changed
- `PLING.bbcode` missing content fix
- Cursor **preview** updated
- `hand2` lines fixed.(from pling.com @peotincelogy)
## [v1.0.5] - 23 October 2020
### Added
- utils `getFrameName.ts` added.
- **22** cursor size added.
- utils `getFrameName.ts` added.
- **22** cursor size added.
### Changed
- remove **Quick Install** using scripts.
- Windows **wrong resize** cursor fix.
- README.md docs & Table of Content refactor.
- remove **Quick Install** using scripts.
- Windows **wrong resize** cursor fix.
- README.md docs & Table of Content refactor.
## [v1.0.4] - 25 September 2020
### Changed
- Product logo (on [imgur](https://i.imgur.com/GVLFmwF))
- fix wrong implementation vertical resize cursor in **KDE**
- Compressed files in `build` **GitHub Action**
- Product logo (on [imgur](https://i.imgur.com/GVLFmwF))
- fix wrong implementation vertical resize cursor in **KDE**
- Compressed files in `build` **GitHub Action**
## [v1.0.3] - 30 August 2020
### Changed
- `Windows Cursors Info` added in `src/svg/README.md` ([14d85f7](https://github.com/ful1e5/apple_cursor/commit/14d85f7ed289d681685e698eae4d0f205b6a3f3a))
- Quick install and Build Docs Improved
- Color palette Icons Changed to Semi-Circle
- Node Script with `yarn-or-npm` package ([2b026ea](https://github.com/ful1e5/apple_cursor/commit/2b026eab2cb96ff89839176297eacf80b340c7d6))
- Window **Config** Sorted ([acbbea2](https://github.com/ful1e5/apple_cursor/commit/acbbea24238fbfd43b405e4af73cc9f8b0101a59))
- Store actual data in `install.inf` in Windows Cursors.
- Build Logs stored to the `build.log` file
- Out Directories are `themes` and `bitmaps`
- Windows Cursors Package is Redesign
- `config.ts` cleanup
- `Windows Cursors Info` added in `src/svg/README.md` ([14d85f7](https://github.com/ful1e5/apple_cursor/commit/14d85f7ed289d681685e698eae4d0f205b6a3f3a))
- Quick install and Build Docs Improved
- Color palette Icons Changed to Semi-Circle
- Node Script with `yarn-or-npm` package ([2b026ea](https://github.com/ful1e5/apple_cursor/commit/2b026eab2cb96ff89839176297eacf80b340c7d6))
- Window **Config** Sorted ([acbbea2](https://github.com/ful1e5/apple_cursor/commit/acbbea24238fbfd43b405e4af73cc9f8b0101a59))
- Store actual data in `install.inf` in Windows Cursors.
- Build Logs stored to the `build.log` file
- Out Directories are `themes` and `bitmaps`
- Windows Cursors Package is Redesign
- `config.ts` cleanup
### Added
- Builder Version in `build` script
- Main method in `render`
- Bitmaps **Pixel** check in `Animated Cursors`
- New `utils` for **Frames Save**
- **OCS** Install support **as default** for Linux users
- Builder Version in `build` script
- Main method in `render`
- Bitmaps **Pixel** check in `Animated Cursors`
- New `utils` for **Frames Save**
- **OCS** Install support **as default** for Linux users
## [v1.0.2] - 10 August 2020
### Changed
- `hand2` and `left_ptr` hotspots alignments fixed.
- Smooth Animation with `35` Delay ([6698a56](https://github.com/ful1e5/apple_cursor/commit/6698a566c08c1f8e6a36ac7012c9a931dac2edf7))
- Ignored `docs` files (**.md ,LICENCE, **.bbcode) in `build` GitHub Actions. ([0df635b](https://github.com/ful1e5/apple_cursor/commit/0df635b1cdd18840606956f2188e735321f6f8b5))
- Windows Configs inside `config.py` ([e7d5092](https://github.com/ful1e5/apple_cursor/commit/e7d509295b69fbe43cdc3ea3000c493dcee47824))
- Redesign **Windows package** with `install.inf`. ([5f99e05](https://github.com/ful1e5/apple_cursor/commit/5f99e0565a5730165a498695bcbba4716108e82b))
- Remove **unnecessary** Windows Cursors. ([5f99e05](https://github.com/ful1e5/apple_cursor/commit/5f99e0565a5730165a498695bcbba4716108e82b))
- `hand2` and `left_ptr` hotspots alignments fixed.
- Smooth Animation with `35` Delay ([6698a56](https://github.com/ful1e5/apple_cursor/commit/6698a566c08c1f8e6a36ac7012c9a931dac2edf7))
- Ignored `docs` files (**.md ,LICENCE, **.bbcode) in `build` GitHub Actions. ([0df635b](https://github.com/ful1e5/apple_cursor/commit/0df635b1cdd18840606956f2188e735321f6f8b5))
- Windows Configs inside `config.py` ([e7d5092](https://github.com/ful1e5/apple_cursor/commit/e7d509295b69fbe43cdc3ea3000c493dcee47824))
- Redesign **Windows package** with `install.inf`. ([5f99e05](https://github.com/ful1e5/apple_cursor/commit/5f99e0565a5730165a498695bcbba4716108e82b))
- Remove **unnecessary** Windows Cursors. ([5f99e05](https://github.com/ful1e5/apple_cursor/commit/5f99e0565a5730165a498695bcbba4716108e82b))
### Added
- Cursors Preview, Build Dependencies, Runtime Dependencies and other Documents @ [README.md](https://github.com/ful1e5/apple_cursor/blob/main/README.md)
- CONTRIBUTING.md
- CODE_OF_CONDUCT.md
- Quick Install (Windows & Linux) Documents @ [README.md](https://github.com/ful1e5/apple_cursor/blob/main/README.md) ([686bde5](https://github.com/ful1e5/apple_cursor/commit/686bde5eda5c4d913dd8c9df49aa94c20d24d9bf), [f36656d](https://github.com/ful1e5/apple_cursor/commit/f36656d1fbcce5c822d78f5964938daf1ad0c4c0))
- **install.sh** and **windows.inf**(automated installation files) added in `scripts` directory.
- Table Of Content in `README.md`([476c64a](https://github.com/ful1e5/apple_cursor/commit/476c64afda50ec48c576b566ce729b575608c529#diff-04c6e90faac2675aa89e2176d2eec7d8))
- Cursors Preview, Build Dependencies, Runtime Dependencies and other Documents @ [README.md](https://github.com/ful1e5/apple_cursor/blob/main/README.md)
- CONTRIBUTING.md
- CODE_OF_CONDUCT.md
- Quick Install (Windows & Linux) Documents @ [README.md](https://github.com/ful1e5/apple_cursor/blob/main/README.md) ([686bde5](https://github.com/ful1e5/apple_cursor/commit/686bde5eda5c4d913dd8c9df49aa94c20d24d9bf), [f36656d](https://github.com/ful1e5/apple_cursor/commit/f36656d1fbcce5c822d78f5964938daf1ad0c4c0))
- **install.sh** and **windows.inf**(automated installation files) added in `scripts` directory.
- Table Of Content in `README.md`([476c64a](https://github.com/ful1e5/apple_cursor/commit/476c64afda50ec48c576b566ce729b575608c529#diff-04c6e90faac2675aa89e2176d2eec7d8))
## [v1.0.1-beta] - 3 August 2020
### Changed
- `hand1 hand2 move` cursors finger gap & border in center
- Drop shadow & FPS(**62**) improvements in `wait, left_ptr_watch` cursors.
- Build size fix **65x65** to **64x64**. ([1120d17](https://github.com/ful1e5/apple_cursor/commit/1120d176636baff2aac1838ba316b4f420be7ca7))
- [Pling](https://www.pling.com/p/1408466/) product page Docs at `PLING.bbcode`.
- `hand1 hand2 move` cursors finger gap & border in center
- Drop shadow & FPS(**62**) improvements in `wait, left_ptr_watch` cursors.
- Build size fix **65x65** to **64x64**. ([1120d17](https://github.com/ful1e5/apple_cursor/commit/1120d176636baff2aac1838ba316b4f420be7ca7))
- [Pling](https://www.pling.com/p/1408466/) product page Docs at `PLING.bbcode`.
## [v1.0.0-alpha1] - 31 July 2020
### Added
- Initial release 🎊
- Logo and badges
- CI/CD Pipelines
- Initial release 🎊
- Logo and badges
- CI/CD Pipelines
[unreleased]: https://github.com/ful1e5/apple_cursor/compare/v2.0.0...main
[unreleased]: https://github.com/ful1e5/apple_cursor/compare/v2.0.1...main
[v2.0.1]: https://github.com/ful1e5/apple_cursor/compare/v2.0.0...v2.0.1
[v2.0.0]: https://github.com/ful1e5/apple_cursor/compare/v1.2.3...v2.0.0
[v1.2.3]: https://github.com/ful1e5/apple_cursor/compare/v1.2.2...v1.2.3
[v1.2.2]: https://github.com/ful1e5/apple_cursor/compare/v1.2.1...v1.2.2

View file

@ -632,7 +632,7 @@ state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
Open source macOS Cursors.
Copyright (C) 2022 Abdulkaiz Khatri
Copyright (C) 2024 Abdulkaiz Khatri
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -652,7 +652,7 @@ Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
apple_cursor Copyright (C) 2022 Abdulkaiz Khatri
apple_cursor Copyright (C) 2024 Abdulkaiz Khatri
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.

213
README.md
View file

@ -1,42 +1,35 @@
<!-- If you're interested, you can learn more about "sponsor-spotlight" on
https://dev.to/ful1e5/lets-give-recognition-to-those-supporting-our-work-on-github-sponsors-b00 -->
![shoutout-sponsors](https://sponsor-spotlight.vercel.app/sponsor?login=ful1e5)
# Apple Cursor
![Apple Cursor](https://github.com/ful1e5/apple_cursor/assets/24286590/ad260d52-6534-441b-902d-440cb368b5c9)
Open source macOS Cursors for `Windows` and `Linux` with _HiDPI Support_ .
[![Build](https://github.com/ful1e5/apple_cursor/workflows/build/badge.svg)](https://github.com/ful1e5/apple_cursor/actions?query=workflow%3Abuild)
## Join the Community as a Sponsor
## Notes
Until 2021, my cursor projects were funded through [pling.com](https://www.pling.com).
However, the funding has since decreased and the projects are now dependent on community
support and sponsorships to continue. If you would like to help me maintain Bibata and my
other open source projects, you can consider sponsoring my work on
[GitHub Sponsor](https://github.com/sponsors/ful1e5) or contacting me on
[Twitter](https://twitter.com/ful1e5) if your company is interested in supporting my projects.
I would be happy to discuss it and include your avatar in the project's README.
- All cursor's SVG files are found in [svg](./svg) directory or you can also find them on [Figma](https://www.figma.com/file/OZw8Ylb9xPFw9h1uZYSMFa/apple_cursor?type=design&node-id=73%3A2&mode=design&t=dLILPgJJrLKeAcTE-1).
I am grateful to all the kind individuals and companies that support and sponsor my work,
which enables me to continue working on open source projects full-time. Thank you.
<!-- If you're interested, you can learn more about "sponsor-spotlight" on
https://dev.to/ful1e5/lets-give-recognition-to-those-supporting-our-work-on-github-sponsors-b00 -->
![shoutout-sponsors](https://sponsor-spotlight.vercel.app/sponsor?login=ful1e5)
- **2024-04-26**: https://github.com/ful1e5/apple_cursor/commit/c684a72e967b58d85492fae5fa68040beae47c10 Partitioned cursor build configuration into multiple files according to platform:
`build.toml` -> `configs/win_lg.build.toml`, `configs/win_rg.build.toml`, `configs/win_xl.build.toml`, `configs/x.build.toml`.
- **2024-02-23**: https://github.com/ful1e5/apple_cursor/commit/07767c24b0c5dbf912cf37350b86adc11671a18e `bitmaps` directory removed, and `macOS Monterey` cursors deprecated.
---
![macOSMonterey](https://imgur.com/bmS0fRT.png)
![macOSMonterey White](https://imgur.com/s0nqcje.png)
![macOSBigSur](https://imgur.com/Q022eSp.png)
![macOSBigSur White](https://imgur.com/SFVR945.png)
> **Note**
> All cursor's `.svg` files are found in [svg](./svg) directory or you can also find them on
> [Figma](https://www.figma.com/file/OZw8Ylb9xPFw9h1uZYSMFa/Mac-Cursor?node-id=0%3A1).
![macOS](https://github.com/ful1e5/apple_cursor/assets/24286590/07018988-36ee-4913-adc7-365854629a20)
![macOS white](https://github.com/ful1e5/apple_cursor/assets/24286590/1d2bcdf5-d3d7-420a-8dae-68c31b191216)
## Cursor Sizes
### Xcursor Sizes:
<kbd>16</kbd>
<kbd>20</kbd>
<kbd>22</kbd>
<kbd>24</kbd>
<kbd>28</kbd>
@ -52,22 +45,26 @@ which enables me to continue working on open source projects full-time. Thank yo
### Windows Cursor Size:
- <kbd>16x16</kbd> - Small
- <kbd>24x24</kbd> - Regular
- <kbd>32x32</kbd> - Large
- <kbd>48x48</kbd> - Extra Large
| size | Regular (× ²⁄₃) | Large (× ⁴⁄₅) | Extra-Large (× 1) |
| ---: | --------------: | ------------: | ----------------: |
| 32 | 21.333 → 22 | 25.6 → 26 | 32 |
| 48 | 32 | 38.4 → 39 | 48 |
| 64 | 42.666 → 43 | 51.2 → 52 | 64 |
| 96 | 64 | 76.8 → 77 | 96 |
| 128 | 85.333 → 86 | 102.4 → 103 | 128 |
| 256 | 170.666 → 171 | 204.8 → 205 | 256 |
## Colors
### Default
- Base Color - `#000000` (Black)
- Outline Color - `#FFFFFF` (White)
- Base Color - `#000000` (Black)
- Outline Color - `#FFFFFF` (White)
### White
- Base Color - `#FFFFFF` (White)
- Outline Color - `#000000` (Black)
- Base Color - `#FFFFFF` (White)
- Outline Color - `#000000` (Black)
## How to get it
@ -99,16 +96,16 @@ paru -S apple_cursor
**Installation:**
```bash
tar -xvf macOS-Bigsur.tar.gz # extract `.tar.gz`
mv macOS-* ~/.icons/ # Install to local users
sudo mv macOS-* /usr/share/icons/ # Install to all users
tar -xvf macOS.tar.gz # extract `.tar.gz`
mv macOS* ~/.icons/ # Install to local users
sudo mv macOS* /usr/share/icons/ # Install to all users
```
**Uninstallation:**
```bash
rm ~/.icons/macOS-* # Remove from local users
sudo rm /usr/share/icons/macOS-* # Remove from all users
rm ~/.icons/macOS* # Remove from local users
sudo rm /usr/share/icons/macOS* # Remove from all users
```
#### Windows
@ -138,81 +135,71 @@ Run the `uninstall.bat` script packed with the `.zip` archive
## Build From Source
#### Notes
### Prerequisites
- Apple Cursor's build configuration and cursor hotspot settings are bundled in the `build.toml` file.
- Check out the scripts section in [package.json](./package.json) to see how we build the cursor theme,
excluding the render scripts. They are useful for converting `.svg` files to `.png` files.
- yarn is optional, For building XCursors and Windows cursors from `.png` files or resizing them
you don't need that. If you want to develop/modify Apple Cursor's colors, and bitmaps, or generate a png
file from a svg, Then you can use yarn because bitmapper is written in TypeScript.
- Since macOS Bigsur and macOS Monterey are designed similarly, they share the same hotspot settings so a
single configuration file `build.toml` is responsible for building all variants. Due to this, you will have
to change the following options in `ctgen` to build the appropriate variant:
- **-d**: bitmaps directory
- **-n**: The name you want to give to the generated theme.
- **-c**: Theme comment.
- See `ctgen --help` for all available options.
### Build prerequisites
- Python version 3.7 or higher
- [clickgen](https://github.com/ful1e5/clickgen)>=2.1.2 (`pip install clickgen`)
- [yarn](https://github.com/yarnpkg/yarn)
- Python version 3.7 or higher
- [clickgen](https://github.com/ful1e5/clickgen)>=2.2.2 (`pip install clickgen`)
- [yarn](https://github.com/yarnpkg/yarn)
### Quick start
1. Install [build prerequisites](#build-prerequisites) on your system
1. Install [build prerequisites](#prerequisites) on your system
2. `git clone https://github.com/ful1e5/apple_cursor`
3. `cd apple_cursor && yarn build`
4. See [Installing Apple Cursor](#installing-apple-cursor).
3. `cd apple_cursor`
4. `yarn install`
5. `yarn generate`
6. See [Installing Apple Cursor](#installing-apple-cursor).
### Building
### Getting Started
> **Note**
> Bitmaps are already generated in the `bitmaps` directory and **managed by the maintainer**
> (do not edit them directly).
Once you have the [build prerequisites](#prerequisites) installed, You can personalize colors,
customize sizes, change target platforms, and more. This process involves using external tools,
as this repository only contains SVG files and configuration for these tools:
First make sure you installed the [build prerequisites](#build-prerequisites).
Now that you have the dependencies, you can try build individual themes from bitmaps and
customize sizes, target platform, and etc. with the `ctgen` CLI (packed with `clickgen`).
- [cbmp](https://github.com/ful1e5/cbmp): Used for customizing colors and generating PNG files.
- [ctgen](https://github.com/ful1e5/clickgen): Used for customizing sizes and building XCursor and Windows Cursors.
#### `yarn build` aberration
You can refer to the README of each tool for more information on their command-line options.
Here are the default commands we used to build the macOS variants and packed them into `yarn build`:
#### Crafting Your Apple Cursor
The process of creating custom cursor themes involves two main steps:
1. Rendering SVG files to PNG files.
2. Building cursor themes from PNG files.
#### Customize Colors
`cbmp` provides three options for changing colors:
1. `-bc`: Base color, which replaces the `#00FF00` color in the SVG.
2. `-oc`: Outlined color, which replaces the `#0000FF` color in the SVG.
3. `-wc` (optional): Watch Background color, which replaces the `#FF0000` color in the SVG.
```bash
npx cbmp -d 'svg/bigsur' -n 'macOS-BigSur' -bc '#000000' -oc '#FFFFFF'
npx cbmp -d 'svg/bigsur' -n 'macOS-BigSur-White' -bc '#FFFFFF' -oc '#000000'
npx cbmp -d 'svg/monterey' -n 'macOS-Monterey' -bc '#000000' -oc '#FFFFFF'
npx cbmp -d 'svg/monterey' -n 'macOS-Monterey-White' -bc '#FFFFFF' -oc '#000000'
npx cbmp [...] -bc '<hex>' -oc '<hex>' -wc '<hex>'
```
Afterwards, the themes can be found in the `themes` directory.
Alternatively, you can provide a JSON configuration file to render SVG files, which contains a sequence of `cbmp` commands:
```bash
npx cbmp render.json
```
#### Customize Sizes
> **Note**
> You can change the cursor size up to 200 because pngs are rendered with 200x200.
> If the cursor is resized by more than rendered png size, the final cursor will be blurred.
##### Customize Windows Cursor size
To build Windows cursor with size `16`:
> **Warning**
> Windows cursor supports only one size, if multiple sizes are given with `-s` the first size will
> be considered in build.
```bash
ctgen build.toml -s 16 -p windows -d 'bitmaps/macOS-BigSur' -n 'macOS-BigSur' -c 'macOS Big Sur Windows Cursors with size 16'
ctgen build.toml -s 16 -p windows -d "bitmaps/macOS" -n "macOS" -c "macOS Cursors with size 16"
```
You can also customize output directory with `-o` option:
```bash
ctgen build.toml -s 16 -p windows -d 'bitmaps/macOS-BigSur' -o 'out' -n 'macOS-BigSur' -c 'macOS Big Sur Windows Cursors with size 16'
ctgen build.toml -s 16 -p windows -d "bitmaps/macOS" -o "out" -n "macOS" -c "macOS Cursors with size 16"
```
##### Customize XCursor size
@ -220,44 +207,27 @@ ctgen build.toml -s 16 -p windows -d 'bitmaps/macOS-BigSur' -o 'out' -n 'macOS-B
To build XCursor with size `16`:
```bash
ctgen build.toml -s 16 -p x11 -d 'bitmaps/macOS-BigSur' -n 'macOS-BigSur' -c 'macOS Big Sur XCursors with size 16'
ctgen build.toml -s 16 -p x11 -d "bitmaps/macOS" -n "macOS" -c "macOS XCursors with size 16"
```
You can also assign multiple sizes to `ctgen` for XCursors build:
```bash
ctgen build.toml -s 16 24 32 -p x11 -d 'bitmaps/macOS-BigSur' -n 'macOS-BigSur' -c 'Custom Sizes macOS Big Sur XCursors'
```
#### Customize Colors
To customize cursors color you have to install node dependencies with `yarn install` command.
After installing dependencies you can customize the colors via `npx cbmp` Node CLI App which packed with
[cbmp](https://github.com/ful1e5/cbmp) node package.
##### `yarn render` aberration
Here are the default commands we used for generating the macOS bitmaps and packed them into `yarn render`:
```bash
npx cbmp -d 'svg/bigsur' -n 'macOS-BigSur' -bc '#000000' -oc '#FFFFFF'
npx cbmp -d 'svg/bigsur' -n 'macOS-BigSur-White' -bc '#FFFFFF' -oc '#000000'
npx cbmp -d 'svg/monterey' -n 'macOS-Monterey' -bc '#000000' -oc '#FFFFFF'
npx cbmp -d 'svg/monterey' -n 'macOS-Monterey-White' -bc '#FFFFFF' -oc '#000000'
ctgen build.toml -s 16 24 32 -p x11 -d "bitmaps/macOS" -n "macOS" -c "Custom Sizes macOS XCursors"
```
#### Examples
Lets generate Big Sur cursor with green base color and black outline:
Lets generate macOS cursor with green and black colors:
```bash
npx cbmp -d 'svg/bigsur' -n 'macOS-BigSur-Hacker' -bc '#00FE00' -oc '#000000'
npx cbmp -d "svg" -o "bitmaps/macOS-Hacker" -bc "#00FE00" -oc "#000000"
```
After rendering custom color you have to build cursor through `ctgen`:
```bash
ctgen build.toml -d 'bitmaps/macOS-BigSur-Hacker' -n 'macOS-BigSur-Hacker' -c 'Green and black macOS Big Sur cursors.'
ctgen build.toml -d "bitmaps/macOS-Hacker" -n "macOS-Hacker" -c "Green and Black macOS cursors."
```
Afterwards, Generated theme can be found in the `themes` directory.
@ -265,31 +235,42 @@ Afterwards, Generated theme can be found in the `themes` directory.
###### macOS Gruvbox
```bash
npx cbmp -d 'svg/monterey' -n 'macOS-Gruvbox' -bc '#282828' -oc '#EBDBB2'
ctgen build.toml -d 'bitmaps/macOS-Gruvbox' -n 'macOS-Gruvbox' -c 'Groovy macOS cursors.'
npx cbmp -d "svg" -o "bitmaps/macOS-Gruvbox" -bc "#282828" -oc "#EBDBB2" -wc "#000000"
ctgen build.toml -d "bitmaps/macOS-Gruvbox" -n "macOS-Gruvbox" -c "Groovy macOS cursors."
```
###### macOS Solarized Dark
```bash
npx cbmp -d 'svg/monterey' -n 'macOS-Solarized-Dark' -bc '#002b36' -oc '#839496'
ctgen build.toml -d 'bitmaps/macOS-Solarized-Dark' -n 'macOS-Solarized-Dark' -c 'Solarized Dark macOS cursors.'
npx cbmp -d "svg" -o "bitmaps/macOS-Solarized-Dark" -bc "#002b36" -oc "#839496" -wc "#000000"
ctgen build.toml -d "bitmaps/macOS-Solarized-Dark" -n "macOS-Solarized-Dark" -c "Solarized Dark macOS cursors."
```
###### macOS Solarized Light
```bash
npx cbmp -d 'svg/bigsur' -n 'macOS-Solarized-Light' -bc '#839496' -oc '#002b36'
ctgen build.toml -d 'bitmaps/macOS-Solarized-Light' -n 'macOS-Solarized-Light' -c 'Solarized Light macOS cursors.'
npx cbmp -d "svg" -o "bitmaps/macOS-Solarized-Light" -bc "#839496" -oc "#002b36"
ctgen build.toml -d "bitmaps/macOS-Solarized-Light" -n "macOS-Solarized-Light" -c "Solarized Light macOS cursors."
```
###### macOS Dracula
```bash
npx cbmp -d 'svg/bigsur' -n 'macOS-Dracula' -bc '#282a36' -oc '#f8f8f2'
ctgen build.toml -d 'bitmaps/macOS-Dracula' -n 'macOS-Dracula' -c 'Dracula macOS cursors.'
npx cbmp -d "svg" -o "bitmaas/macOS-Dracula" -bc "#282a36" -oc "#f8f8f2"
ctgen build.toml -d "bitmaps/macOS-Dracula" -n "macOS-Dracula" -c "Dracula macOS cursors."
```
# Contributing
## Testing Cursor
Check [CONTRIBUTING.md](CONTRIBUTING.md), any suggestions for features and contributions to the continuing code masterelopment can be made via the issue tracker or code contributions via a `Fork` & `Pull requests`.
There are several websites that allow you to test your cursor states by hovering over buttons. This can be very useful when developing or verifying the behavior of a cursor. The following websites cover many of the most commonly used cursors, although they may not include all available options.
- [Cursor-Test](https://vibhorjaiswal.github.io/Cursor-Test/)
- [Mozilla CSS Cursor](https://developer.mozilla.org/en-US/docs/Web/CSS/cursor)
For a blueprint for creating XCursors, you may also want to refer to [Cursor-demo](https://wiki.tcl-lang.org/page/Cursor+demo).
## Credit
[Adwaita](https://github.com/GNOME/adwaita-icon-theme) ·
[Dmz](https://github.com/GalliumOS/dmz-cursor-theme) ·
[Yaru](https://github.com/ubuntu/yaru)

Binary file not shown.

Before

(image error) Size: 9.2 KiB

Binary file not shown.

Before

(image error) Size: 7 KiB

Binary file not shown.

Before

(image error) Size: 5.3 KiB

Binary file not shown.

Before

(image error) Size: 5.4 KiB

Binary file not shown.

Before

(image error) Size: 4.4 KiB

Binary file not shown.

Before

(image error) Size: 7.7 KiB

Binary file not shown.

Before

(image error) Size: 5.9 KiB

Binary file not shown.

Before

(image error) Size: 9 KiB

Binary file not shown.

Before

(image error) Size: 3.8 KiB

Binary file not shown.

Before

(image error) Size: 9.3 KiB

Binary file not shown.

Before

(image error) Size: 8.9 KiB

Binary file not shown.

Before

(image error) Size: 6.2 KiB

Binary file not shown.

Before

(image error) Size: 5.1 KiB

Binary file not shown.

Before

(image error) Size: 8.6 KiB

Binary file not shown.

Before

(image error) Size: 8.3 KiB

Binary file not shown.

Before

(image error) Size: 5.3 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 14 KiB

Binary file not shown.

Before

(image error) Size: 14 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 14 KiB

Binary file not shown.

Before

(image error) Size: 13 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 14 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 14 KiB

Binary file not shown.

Before

(image error) Size: 13 KiB

Binary file not shown.

Before

(image error) Size: 12 KiB

Binary file not shown.

Before

(image error) Size: 12 KiB

Binary file not shown.

Before

(image error) Size: 5.4 KiB

Binary file not shown.

Before

(image error) Size: 4.7 KiB

Binary file not shown.

Before

(image error) Size: 5.9 KiB

Binary file not shown.

Before

(image error) Size: 4 KiB

Binary file not shown.

Before

(image error) Size: 4 KiB

Binary file not shown.

Before

(image error) Size: 7.4 KiB

Binary file not shown.

Before

(image error) Size: 6.9 KiB

Binary file not shown.

Before

(image error) Size: 3.8 KiB

Binary file not shown.

Before

(image error) Size: 5.6 KiB

Binary file not shown.

Before

(image error) Size: 5.3 KiB

Binary file not shown.

Before

(image error) Size: 5.2 KiB

Binary file not shown.

Before

(image error) Size: 3.6 KiB

Binary file not shown.

Before

(image error) Size: 7.3 KiB

Binary file not shown.

Before

(image error) Size: 3.6 KiB

Binary file not shown.

Before

(image error) Size: 3.7 KiB

Binary file not shown.

Before

(image error) Size: 3.7 KiB

Binary file not shown.

Before

(image error) Size: 7 KiB

Binary file not shown.

Before

(image error) Size: 5.2 KiB

Binary file not shown.

Before

(image error) Size: 5 KiB

Binary file not shown.

Before

(image error) Size: 4.4 KiB

Binary file not shown.

Before

(image error) Size: 4.5 KiB

Binary file not shown.

Before

(image error) Size: 6.1 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 14 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 16 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 14 KiB

Binary file not shown.

Before

(image error) Size: 16 KiB

Binary file not shown.

Before

(image error) Size: 16 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 16 KiB

Binary file not shown.

Before

(image error) Size: 14 KiB

Binary file not shown.

Before

(image error) Size: 14 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Binary file not shown.

Before

(image error) Size: 14 KiB

Binary file not shown.

Before

(image error) Size: 14 KiB

Binary file not shown.

Before

(image error) Size: 12 KiB

Binary file not shown.

Before

(image error) Size: 14 KiB

Binary file not shown.

Before

(image error) Size: 15 KiB

Some files were not shown because too many files have changed in this diff Show more