chore: Organized project files and docs

I have changed many things which I have written in the readme.
This commit is contained in:
ful1e5 2022-08-17 16:38:00 +05:30
parent 8faa063130
commit 44e1e9fada
2691 changed files with 1260 additions and 2577 deletions

View file

@ -1,20 +0,0 @@
---
name: " \U0001F41B Bug Report"
about: Did something not work?
title: ''
labels: bug
assignees: ''
---
## Description of the problem
## How has this issue affected you? What are you trying to accomplish?
### Logs or Screenshots: (optional)
### Your Environment
| Software | Name/Version |
| ---------------- | ------------ |
| Operating System | |

View file

@ -1,11 +0,0 @@
---
name: "\U0001F308 Feature"
about: " What cool thing would you like to add?"
title: ""
labels: enhancement
assignees: ""
---
<!-- What is this feature? -->
<!-- How the feature should work? -->
<!-- You have examples or an idea of how it can be implemented? -->

View file

@ -1 +0,0 @@
blank_issues_enabled: false

View file

@ -1,41 +0,0 @@
<!--
Please make sure you are familiar with and follow the instructions in the
contributing guidelines (found in the CONTRIBUTING.md file).
Please fill out the information below to expedite the review and (hopefully)
merge of your pull request!
-->
## What kind of change does this PR introduce?
<!-- Is it a Bug fix, feature, docs update, ... -->
## What is the current behavior?
<!-- You can also link to an open issue here -->
## What is the new behavior?
<!-- if this is a feature change -->
## What steps did you take to test this?
<!-- This is required before I can merge, make sure to test the flow you've updated. -->
1. Step A
2. Step B
3. Step C
## Checklist
<!-- Have you done all of these things? -->
<!-- add "N/A" to the end of each line that's irrelevant to your changes -->
<!-- to check an item, place an "x" in the box like so: "- [x] Documentation" -->
- [ ] Documentation
- [ ] Testing
- [ ] Ready to be merged
- [ ] Added myself to contributors table
<!-- feel free to add additional comments -->
<!-- Thank you for contributing! -->

View file

@ -1,158 +0,0 @@
name: build
on:
push:
paths-ignore:
- "**.md"
- "**.bbcode"
- LICENSE
- .github/FUNDING.yml
branches: [main, dev]
pull_request:
paths-ignore:
- "**.md"
- "**.bbcode"
- LICENSE
- .github/FUNDING.yml
branches: [main]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install build dependencies (apt)
run: sudo apt install -y libx11-dev libxcursor-dev libpng-dev
continue-on-error: false
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: Caching yarn packages
uses: actions/cache@v2
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-yarn-
- name: Set Up NodeJS 12.x
uses: actions/setup-node@v1
with:
node-version: "12.x"
- name: Caching pip packages
uses: actions/cache@v2
id: pip-cache # use this to check for `cache-hit` (`steps.pip-cache.outputs.cache-hit != 'true'`)
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/setup.py') }}
restore-keys: |
${{ runner.os }}-pip-
- name: Set up Python 3.8
uses: actions/setup-python@v2
with:
python-version: "3.8"
- name: Generating `Bibata-Modern` symlinks
run: cd svg && python link.py && cd ..
continue-on-error: false
- name: Generating `Bibata` Cursor Themes
run: make
continue-on-error: false
- name: Compressing `Bibata-Modern` Unix Themes
run: |
tar -cvzf Bibata-Modern-Amber.tar.gz themes/Bibata-Modern-Amber
tar -cvzf Bibata-Modern-Classic.tar.gz themes/Bibata-Modern-Classic
tar -cvzf Bibata-Modern-Ice.tar.gz themes/Bibata-Modern-Ice
- name: Uploading `Bibata-Modern-Amber` Unix Theme artifact
uses: actions/upload-artifact@v2
with:
name: Bibata-Modern-Amber
path: Bibata-Modern-Amber.tar.gz
- name: Uploading `Bibata-Modern-Amber` Windows Theme artifact
uses: actions/upload-artifact@v2
with:
name: Bibata-Modern-Amber-Windows
path: themes/Bibata-Modern-Amber-Windows/*
- name: Uploading `Bibata-Modern-Classic` Unix Theme artifact
uses: actions/upload-artifact@v2
with:
name: Bibata-Modern-Classic
path: Bibata-Modern-Classic.tar.gz
- name: Uploading `Bibata-Modern-Classic` Windows Theme artifact
uses: actions/upload-artifact@v2
with:
name: Bibata-Modern-Classic-Windows
path: themes/Bibata-Modern-Classic-Windows/*
- name: Uploading `Bibata-Modern-Ice` Unix Theme artifact
uses: actions/upload-artifact@v2
with:
name: Bibata-Modern-Ice
path: Bibata-Modern-Ice.tar.gz
- name: Uploading `Bibata-Modern-Ice` Windows Theme artifact
uses: actions/upload-artifact@v2
with:
name: Bibata-Modern-Ice-Windows
path: themes/Bibata-Modern-Ice-Windows/*
- name: Compressing `Bibata-Original` Unix Themes
run: |
tar -cvzf Bibata-Original-Amber.tar.gz themes/Bibata-Original-Amber
tar -cvzf Bibata-Original-Classic.tar.gz themes/Bibata-Original-Classic
tar -cvzf Bibata-Original-Ice.tar.gz themes/Bibata-Original-Ice
- name: Uploading `Bibata-Original-Amber` Unix Theme artifact
uses: actions/upload-artifact@v2
with:
name: Bibata-Original-Amber
path: Bibata-Original-Amber.tar.gz
- name: Uploading `Bibata-Original-Amber` Windows Theme artifact
uses: actions/upload-artifact@v2
with:
name: Bibata-Original-Amber-Windows
path: themes/Bibata-Original-Amber-Windows/*
- name: Uploading `Bibata-Original-Classic` Unix Theme artifact
uses: actions/upload-artifact@v2
with:
name: Bibata-Original-Classic
path: Bibata-Original-Classic.tar.gz
- name: Uploading `Bibata-Original-Classic` Windows Theme artifact
uses: actions/upload-artifact@v2
with:
name: Bibata-Original-Classic-Windows
path: themes/Bibata-Original-Classic-Windows/*
- name: Uploading `Bibata-Original-Ice` Unix Theme artifact
uses: actions/upload-artifact@v2
with:
name: Bibata-Original-Ice
path: Bibata-Original-Ice.tar.gz
- name: Uploading `Bibata-Original-Ice` Windows Theme artifact
uses: actions/upload-artifact@v2
with:
name: Bibata-Original-Ice-Windows
path: themes/Bibata-Original-Ice-Windows/*
- name: Uploading `Bibata` bitmaps artifact
uses: actions/upload-artifact@v2
with:
name: bitmaps
path: bitmaps/*

41
.github/workflows/ci.yml vendored Normal file
View file

@ -0,0 +1,41 @@
name: ci
on:
push:
paths-ignore:
- "**.md"
- LICENSE
- .github/FUNDING.yml
branches: [main, dev]
pull_request:
paths-ignore:
- "**.md"
- LICENSE
- .github/FUNDING.yml
branches: [main]
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ["3.7", "3.8", "3.9", "3.10"]
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Installing pip dependencies
run: python -m pip install --upgrade pip clickgen
continue-on-error: false
- name: Building `Bibata` Cursors
- uses: borales/actions-yarn@v3.0.0
with:
cmd: build
continue-on-error: false

5
.gitignore vendored
View file

@ -1,9 +1,6 @@
# --------------------------------------------- Custom
bitmaps
themes
bin
# --------------------------------------------- Python
# Byte-compiled / optimized / DLL files
__pycache__/
@ -136,8 +133,6 @@ dmypy.json
.pyre/
# --------------------------------------------- Nodejs
# Logs
logs
*.log

View file

@ -9,30 +9,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Added
- [Bibata Zebra](https://github.com/ful1e5/Bibata-Zebra-Cursor) link added inside README.md
- [Bibata Bee](https://github.com/ful1e5/Bibata-Bee-Cursor) link added inside README.md
- tidy docs inside `README.md`
- make commands are more readable inside `builder/Makefile`
- symlink common cursor svg files using `svg/link.py`
- ci updated for symlink script
- distributed artifacts inside `build` GitHub actions
- symlink common cursor svg files using `svg/link.py` (for developers)
- Add cursor top_left_arrow cursor ful1e5/BreezeX_Cursor#10 ful1e5/BreezeX_Cursor#11
- Uninstall docs ful1e5/apple_cursor#79 ful1e5/apple_cursor#80
- feat: CLI for bitmapper #104
- chore: use -C flag for sub Makefile
### Changed
- used `THEME_PREFIX` variable in make commands
- support creator button updated
- emojis removed from README.md
- Github Action renamed to `build`
- prettier `bitmapping` logs
- `svg/link.py` file added inside pyright config
- Fix `None` value warning in `builder/symlinks.py`
- README.md: removed nonsense and included theme names with description. (fixed #113)
## [Bibata v1.1.2] - 12 Jul 2021
## [Bibata v1.1.2] - 12 July 2021
### Added
@ -50,7 +38,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- `Makefile` build commands re-arrange with groups
- Dynamic determine **Windows canvas size** on **Windows cursor size** inside build.py`
## [Bibata v1.1.1] - 26 Mar 2021
## [Bibata v1.1.1] - 26 March 2021
### Added
@ -73,11 +61,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Format `svg` files
- Remove old username of an author with Contributors table
## [Bibata v1.1.0] - 26 Feb 2021
## [Bibata v1.1.0] - 26 February 2021
### Added
- new **[copr](https://copr.fedorainfracloud.org/coprs/peterwu/rendezvous/package/bibata-cursor-themes/)** package by @peterwu
- new **[copr](https://copr.fedorainfracloud.org/coprs/peterwu/rendezvous/package/bibata-cursor-themes/)**
package by @peterwu
- `.svg` files separated to `<root>/svg`
- Customizable Windows & UNIX cursors #91
- Easy build system with `Make` supports
@ -102,7 +91,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Fix Cursors not available for Login Window in Linux Mint 20 #88
- Dirty pixel in `move` cursor fixed #94
## [Bibata v1.0.3] - 10 Nov 2020
## [Bibata v1.0.3] - 10 November 2020
### Added
@ -118,7 +107,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- fixed #82 improvement to X-cursor (feature request)
- fixed #81 Corner resize cursors are not coloured (bug)
## [Bibata v1.0.2] - 30 Oct 2020
## [Bibata v1.0.2] - 30 October 2020
### Added
@ -134,7 +123,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- locked clickgen to **1.1.7**
- Package information provider module changed to `builder/pkg_info.py`
## [Bibata v1.0.1] - 8 Oct 2020
## [Bibata v1.0.1] - 08 October 2020
### Added
@ -154,7 +143,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- #76 Wrong implementation resize cursors **[closed]**
- #74 `Pillow` pip requirements checking in installation of **clickgen**
## [Bibata v1.0.0] - 3 Oct 2020
## [Bibata v1.0.0] - 03 October 2020
### Changed
@ -190,7 +179,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Bibata Logo resigned
## [Bibata v0.4.2.alpha.2] - 1 December 2019
## [Bibata v0.4.2.alpha.2] - 01 December 2019
### Added
@ -219,7 +208,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Cursor's corner-shape changed
- Hot-spots changed
## [Bibata v.0.4.1] - 3 September 2018
## [Bibata v.0.4.1] - 03 September 2018
### Changed
@ -232,7 +221,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Redesign Crosshair
## [Bibata v0.3] - 3 February 2018
## [Bibata v0.3] - 03 February 2018
### Added

107
Makefile
View file

@ -1,107 +0,0 @@
all: clean render build
.PHONY: all
# Default
clean:
@rm -rf bitmaps themes
render: bitmapper svg
@make -C bitmapper
build: bitmaps
@make -C builder setup build
# Specific platform build
unix: clean render bitmaps
@make -C builder setup build_unix
windows: clean render bitmaps
@make -C builder setup build_windows
# Bibata Modern
modern: clean render_modern build_modern
render_modern: bitmapper svg
@make -C bitmapper install build render_modern
build_modern: bitmaps
@make -C builder setup build_modern
# Bibata Original
original:clean render_original build_original
render_original: bitmapper svg
@make -C bitmapper install build render_original
build_original: bitmaps
@make -C builder setup build_original
# Installation
.ONESHELL:
SHELL := /bin/bash
THEME_PREFIX = Bibata
src = ./themes/$(THEME_PREFIX)-*
local := ~/.icons
local_dest := $(local)/$(THEME_PREFIX)-*
root := /usr/share/icons
root_dest := $(root)/$(THEME_PREFIX)-*
install: themes
@if [[ $EUID -ne 0 ]]; then
@echo "> Installing '$(THEME_PREFIX)' cursors inside $(local)/..."
@mkdir -p $(local)
@cp -r $(src) $(local)/ && echo "> Installed!"
@else
@echo "> Installing '$(THEME_PREFIX)' cursors inside $(root)/..."
@mkdir -p $(root)
@sudo cp -r $(src) $(root)/ && echo "> Installed!"
@fi
uninstall:
@if [[ $EUID -ne 0 ]]; then
@echo "> Removing '$(THEME_PREFIX)' cursors from '$(local)'..."
@rm -rf $(local_dest)
@else
@echo "> Removing '$(THEME_PREFIX)' cursors from '$(root)'..."
@sudo rm -rf $(root_dest)
@fi
reinstall: uninstall install
# generates binaries
THEMES = Amber Classic Ice
BIN_DIR = ../bin
modern = $(THEME_PREFIX)-Modern
original = $(THEME_PREFIX)-Original
prepare: bitmaps themes
# Bitmaps
@rm -rf bin && mkdir bin
@cd bitmaps && zip -r $(BIN_DIR)/bitmaps.zip * && cd ..
@cd themes
#
# Bibata-Modern
#
@$(foreach theme,$(THEMES), tar -czvf $(BIN_DIR)/$(modern)-$(theme).tar.gz $(modern)-$(theme);)
@$(foreach theme,$(THEMES), zip -r $(BIN_DIR)/$(modern)-$(theme)-Windows.zip $(modern)-$(theme)-Windows;)
@tar -czvf $(BIN_DIR)/$(modern).tar.gz $(modern)-Amber $(modern)-Classic $(modern)-Ice
@zip -r $(BIN_DIR)/$(modern)-Windows.zip $(modern)-Amber-Windows $(modern)-Classic-Windows $(modern)-Ice-Windows
#
# Bibata-Original
#
@$(foreach theme,$(THEMES), tar -czvf $(BIN_DIR)/$(original)-$(theme).tar.gz $(original)-$(theme);)
@$(foreach theme,$(THEMES), zip -r $(BIN_DIR)/$(original)-$(theme)-Windows.zip $(original)-$(theme)-Windows;)
@tar -czvf $(BIN_DIR)/$(original).tar.gz $(original)-Amber $(original)-Classic $(original)-Ice
@zip -r $(BIN_DIR)/$(original)-Windows.zip $(original)-Amber-Windows $(original)-Classic-Windows $(original)-Ice-Windows
#
# Bibata.tar.gz
#
@tar -czvf $(BIN_DIR)/Bibata.tar.gz --exclude='*-Windows' *
@cd ..

View file

@ -1,51 +0,0 @@
[b]Bibata[/b] Cursor Theme with [b]HiDPi[/b] Display support. This Cursor is built with [b][url=https://github.com/ful1e5/clickgen]clickgen[/url][/b] and render with the [b][url=https://github.com/puppeteer/puppeteer/]puppeteer[/url][/b].
[i][b]Bibata Styles: [/b][/i]
[i]Bibata Modern [/i] : Round Edges Bibata Cursors
[i]Bibata Original [/i] : Sharp Edges Bibata Cursors
[i]Available Sizes[/i] [b]22, 24, 28, 32, 40, 48, 56, 64, 72, 80, 88, 96[/b]
[i]Get the latest build[/i] @[b][url=https://github.com/ful1e5/Bibata_Cursor/actions]GitHub Actions[/url][/b]
[i]Release Notification[/i] at [b][url=https://twitter.com/ful1e5]Twitter[/url][/b](@ful1e5)
For [i]Customizing Size[/i] check [b][url=https://github.com/ful1e5/Bibata_Cursor#manual-build]README.md[/url][/b]
[b] Support Creator[/b]
[url=https://www.buymeacoffee.com/Nt7Wg4V][img]https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png[/img][/url]
[b]Linux/X11 installation[/b]
Get the latest stable Linux release from the [b][url=https://www.pling.com/p/1197198/#files-panel]Pling[/url][/b]. Unpack [b].tar.gz[/b] file and follow these [b]commands[/b].
[b]Install[/b]
[b]For all user:[/b]
[code]sudo mv Bibata-* /usr/share/icons[/code]
[b]For local user:
[/b][code]mv Bibata-* ~/.icons[/code]
[b][size=100]Uninstall[/size][/b]
[b]From all user:[/b]
[code]sudo rm -r /usr/share/icons/Bibata-*[/code]
[b]From local user:[/b]
[code]rm -r ~/.icons/Bibata-*[/code]
[size=150][b]Window installation[/b][/size]
[list=1]
[*]unzip [b].zip[/b] file[/*]
[*]Open [b]unziped[/b] directory in Explorer, and [b]right-click[/b] on [b]install.inf[/b].[/*]
[*]Click 'Install' from the context menu, and authorize the modifications to your system.[/*]
[*]Open [i]Control Panel > Personalisation and Appearance > Change mouse pointers[/i], and select [b]Bibata Cursors[/b].[/*]
[*]Click '[b]Apply[/b]'.[/*]
[/list]
[b]How I help the Creator?[/b]
[list=2]
[*][size=85]Give a [b]Star[/b] or [b]Follow[/b] on [b][url=https://github.com/ful1e5/Bibata_Cursor]GitHub[/url][/b] (issues & PullRequest are welcome).[/size][/*]
[*][size=85]By giving a [b]Pling[/b] or [b][url=https://www.paypal.me/kaizkhatri]Donation[/url][/b].[/size][/*]
[*][size=85][b]Download[/b] from[url=https://www.pling.com/p/1197198/] Pling.com[/url] Product page that helps to [b]increases[/b] my [b]monthly payout[/b].[/size][/*]
[*][size=85][b][url=https://www.pling.com/support]Become a Supporter of Pling.com[/url][/b], So we become [b]Full-Time [/b]Libre & FOSS content creator [b];)[/b][/size][/*]
[/list]
[size=150][b]License & Terms[/b][/size]
'[b]Bibata[/b]' Cursor Theme is available under the terms of the [b]GPL-3.0[/b] license.

272
README.md
View file

@ -1,21 +1,52 @@
# Bibata Cursor
[![build](https://github.com/ful1e5/Bibata_Cursor/actions/workflows/build.yml/badge.svg)](https://github.com/ful1e5/Bibata_Cursor/actions/workflows/build.yml)
[![Twitter](https://img.shields.io/badge/Notifications-twitter-blue)](https://twitter.com/ful1e5)
[![ci](https://github.com/ful1e5/Bibata_Cursor/actions/workflows/ci.yml/badge.svg)](https://github.com/ful1e5/Bibata_Cursor/actions/workflows/ci.yml)
[![twitter](https://img.shields.io/badge/Notification-twitter-blue)](https://twitter.com/ful1e5)
**TLDR; This cursor set is the masterpiece of all cursors available on the internet.**
Bibata is **OpenSource**, compact, and material designed cursor set. This project masterelop for
improve `Cursor` experience.
improve cursor experience.
**Cursors Themes:**
Bibata is one of the most popular cursors set in the Linux community so far and is now available
for freely with multiple colors and size options for Windows as well. The aim of this project is to
provide the best personalized cursors to users.
- **Bibata Original Amber :** Sharp edges yellowish theme.
- **Bibata Modern Amber :** Rounded edges yellowish theme.
- **Bibata Original Classic :** Sharp edges black theme.
- **Bibata Modern Classic :** Rounded edges black theme.
- **Bibata Original Ice :** Sharp edges white theme.
- **Bibata Modern Ice :** Rounded edges white theme.
#### Future!?
**Cursor Sizes:**
Until now Bibata was funded by [pling.com](https://www.pling.com) but since the
[pling-factor](https://www.pling.com/terms/payout) on the website has decreased and monthly payments
are <100$ it is now dependent on community funding and sponsorships. If you want to help us build
future cursors or if you use Bibata as the default cursor theme, consider becoming a partner.
Your support will also be beneficial for my upcoming projects like:
- [cursrs](https://github.com/ful1e5/cursrs) - Superior cursors platform. A open source web app
where you can customize customize and download cursors.
Visit the [GitHub Sponsor](https://github.com/sponsors/ful1e5) page to become a partner.
DM me on [Twitter](https://twitter.com/ful1e5) if your company would like to support this project,
I will gladly look into it and post your logo in the README.
#### Sponsors
I appreciate all these wonderful people who patronize and sponsoring my work.
Your support will help me actively maintain Bibata and other open source projects.
<!-- Add your name or avatar here with the Pull Request in case I missed it. -->
_Be you first._
#### Variants:
- **Bibata Original Amber:** Yellowish and rounded edge bibata cursors.
- **Bibata Modern Amber:** Yellowish and sharp edge bibata cursors.
- **Bibata Original Classic:** Black and sharp edge bibata cursors.
- **Bibata Modern Classic:** Black and rounded edge bibata cursors.
- **Bibata Original Ice:** White and sharp edge bibata cursors.
- **Bibata Modern Ice:** White and rounded edge bibata cursors
#### Xcursor Sizes:
<kbd>22</kbd>
<kbd>24</kbd>
@ -30,29 +61,32 @@ improve `Cursor` experience.
<kbd>88</kbd>
<kbd>96</kbd>
**Colors:**
#### Windows Cursor Size:
![Amber](https://imgur.com/5Jo6MSO.png)
![Classic](https://imgur.com/I5cRKE4.png)
![Ice](https://imgur.com/avnR40g.png)
- <kbd>16x16</kbd> - Small
- <kbd>24x24</kbd> - Regular
- <kbd>32x32</kbd> - Large
- <kbd>48x48</kbd> - Extra Large
**Support with $1 or more on GitHub Sponsors.**
#### Gallery
## Quick install (Recommended)
Download pre-built binaries on [pling store](https://www.pling.com/p/1197198/)
## Preview
> Check Figma file [here](https://www.figma.com/file/Y9RKZLXhSvaxpUzsKGJkp6/Bibata-Cursor?node-id=0%3A1)
> **Note**
> All svg files are found in [svg](./svg) directory or you can also use
> [Figma](https://www.figma.com/file/Y9RKZLXhSvaxpUzsKGJkp6/Bibata-Cursor?node-id=0%3A1).
![Bibata Amber](https://i.imgur.com/2DEYWDC.png)
![Bibata Classic](https://i.imgur.com/C8mMQ3j.png)
![Bibata Ice](https://i.imgur.com/ovzTw6u.png)
## Binaries
You can download latest `stable` & `development` releases from
[Release Page](https://github.com/ful1e5/Bibata_Cursor/releases).
## Packages
> **Note**: If you're having trouble with the packages please submit a request to the package maintainer
> **Note**
> If you're having trouble with the packages please submit a request to the package maintainer
> before creating an issue.
### Arch Linux/Manjaro
@ -60,11 +94,11 @@ Download pre-built binaries on [pling store](https://www.pling.com/p/1197198/)
Arch Linux/Manjaro users can install from the [AUR](https://aur.archlinux.org/packages/bibata-cursor-theme)
currently maintained by [_@Shatur_](https://aur.archlinux.org/packages/?K=Shatur&SeB=m) &
[_@yochananmarqos_](https://aur.archlinux.org/packages/?K=yochananmarqos&SeB=m).
Can be installed via Pamac (preinstalled in Manjaro), Yay or any other
Can be installed via Pamac (preinstalled in Manjaro), Paru or any other
[AUR helper](https://wiki.archlinux.org/index.php/AUR_helpers).
```bash
yay -S bibata-cursor-theme
paru -S bibata-cursor-theme
```
Alternatively, Bibata binaries can be also installed using the PKGBUILD `bibata-theme-bin`,
@ -86,46 +120,41 @@ sudo dnf copr enable muhalantabli/copr-repo
sudo dnf install bibata-cursor-theme
```
## Manual Install
Latest `Stable` & `Development` releases can be downloaded from
[Release Page](https://github.com/ful1e5/Bibata_Cursor/releases).
## Installing Bibata Cursor
#### Linux/X11
**Installation:**
```bash
# extract `Bibata.tar.gz`
tar -xvf Bibata.tar.gz
tar -xvf Bibata.tar.gz # extract `Bibata.tar.gz`
mv Bibata-* ~/.icons/ # Install to local users
sudo mv Bibata-* /usr/share/icons/ # Install to all users
```
# For local users
mv Bibata-* ~/.icons/
**Uninstallation:**
# For all users
sudo mv Bibata-* /usr/share/icons/
```bash
rm ~/.icons/Bibata-* # Remove from local users
sudo rm /usr/share/icons/Bibata-* # Remove from all users
```
#### Windows
1. unzip `.zip` file
**Installation:**
1. Unzip `.zip` file
2. Open unziped directory in Explorer, and **right click** on `install.inf`.
3. Click 'Install' from the context menu, and authorize the modifications to your system.
4. Open _Control Panel_ > _Personalization and Appearance_ > _Change mouse pointers_,
4. Open Control Panel > Personalization and Appearance > Change mouse pointers,
and select **Bibata Cursors**.
5. Click '**Apply**'.
### Uninstall
**Uninstallation:**
#### Linux/X11
Run the `uninstall.bat` script packed with the `.zip` archive
```bash
# From local users
rm ~/.icons/Bibata-*
# From all users
sudo rm /usr/share/icons/Bibata-*
```
#### Windows
**OR** follow these steps:
1. Go to **Registry Editor** by typing the same in the _start search box_.
2. Expand `HKEY_CURRENT_USER` folder and expand `Control Panel` folder.
@ -135,111 +164,92 @@ sudo rm /usr/share/icons/Bibata-*
click `Delete`.
5. Click '**yes**' when prompted.
## Dependencies
## Build From Source
### External Libraries
### Build prerequisites
- libxcursor-dev
- libx11-dev
- libpng-dev (<=1.6)
- Python version 3.7 or higher
- [clickgen](https://github.com/ful1e5/clickgen) >= 2.0.0 Python package (`pip install clickgen`)
- [yarn](https://github.com/yarnpkg/yarn)
#### Install External Libraries
### Quick start
##### macOS
1. Install [build prerequisites](#build-prerequisites) on your system
2. `git clone https://github.com/ful1e5/Bibata_Cursor`
3. `cd Bibata_Cursor && yarn build`
4. See [Installing Bibata Cursor](#installing-bibata-cursor).
### Building
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`).
**Notes :**
- Bibata 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 created the cursor theme,
excluding the render scripts. They are useful for converting `.svg` files to `.png`
that are already generated in the **bitmaps directory** and **managed by the maintainer**.
- **Yarn is optional**. For building XCursor and Windows Cursor or resizing it you don't need that.
If you want to develop/modify Bibata's colors, and bitmaps, or generate a png file from a svg, you can use
yarn because bitmapper is written in TypeScript.
- Since Bibata variants 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.
##### Default Build Commands or `yarn build`
Here are the default commands we used to build the Bibata's variants and packed them into `yarn build`:
```bash
brew install --cask xquartz
brew install libpng
ctgen build.toml -n 'Bibata-Modern-Amber' -c 'Yellowish and rounded edge bibata cursors.' -d 'bitmaps/Bibata-Modern-Amber'
ctgen build.toml -n 'Bibata-Modern-Classic' -c 'Black and rounded edge Bibata cursors.' -d 'bitmaps/Bibata-Modern-Classic'
ctgen build.toml -n 'Bibata-Modern-Ice' -c 'White and rounded edge Bibata cursors.' -d 'bitmaps/Bibata-Modern-Ice'
ctgen build.toml -n 'Bibata-Original-Amber' -c 'Yellowish and sharp edge Bibata cursors.' -d 'bitmaps/Bibata-Original-Amber'
ctgen build.toml -n 'Bibata-Original-Classic' -c 'Black and sharp edge Bibata cursors.' -d 'bitmaps/Bibata-Original-Classic'
ctgen build.toml -n 'Bibata-Original-Ice' -c 'White and sharp edge Bibata cursors.' -d 'bitmaps/Bibata-Original-Ice'
```
##### Debain/ubuntu
Afterwards, the themes can be found in the `themes/` directory.
##### Customize Windows Cursor size
To build Windows cursor with size `16`:
> **Warning**
> Windows cursor supports only one size, if multiple sizes are given in `-s` the first size will
> be considered in build.
```bash
sudo apt install libx11-dev libxcursor-dev libpng-dev
ctgen build.toml -s 16 -p windows -d 'bitmaps/Bibata-Modern-Ice' -n 'Bibata Modern Ice' -c 'White and rounded egde bibata cusors with size 16'
```
##### ArchLinux/Manjaro
You can also customize output directory with `-o` option:
```bash
sudo pacman -S libx11 libxcursor libpng
ctgen build.toml -s 16 -p windows -d 'bitmaps/Bibata-Modern-Ice' -o 'out/' -n 'Bibata Modern Ice' -c 'White and rounded egde Bibata cursors with size 16'
```
##### Fedora/Fedora Silverblue/CentOS/RHEL
##### Customize XCursor size
To build XCursor with size `16`:
```bash
sudo dnf install libX11-devel libXcursor-devel libpng-devel
ctgen build.toml -s 16 -p x11 -d 'bitmaps/Bibata-Modern-Ice' -n 'Bibata Modern Ice' -c 'White and rounded egde Bibata cursors with size 16'
```
## Build Dependencies
- [gcc](https://gcc.gnu.org/install/)
- [make](https://www.gnu.org/software/make/)
- [nodejs](https://nodejs.org/en/) (<=12.x.x)
- [yarn](https://classic.yarnpkg.com/en/docs/install/)
- [python](https://www.python.org/downloads/) (<=3.8)
- [pip3](https://pip.pypa.io/en/stable/installing/)
### Node Packages
- [puppeteer](https://www.npmjs.com/package/puppeteer)
- [pngjs](https://www.npmjs.com/package/pngjs)
- [pixelmatch](https://www.npmjs.com/package/pixelmatch)
### PyPi Packages
- [clickgen](https://pypi.org/project/clickgen)
## Build From Scratch
### Auto Build (using GitHub Actions)
GitHub Actions is automatically runs on every `push`(on **main** & **dev** branch) and `pull request`
(on **main** branch), You found theme resources in `artifact` section of **bibata-ci**.
GitHub **Actions** available inside [.github/workflows](./.github/workflows) directory.
### Manual Build
Check **[Makefile](./Makefile)** for more targets.
You can also assign multiple sizes to `ctgen` for XCursors build:
```bash
make
ctgen build.toml -s 16 24 32 -p x11 -d 'bitmaps/Bibata-Modern-Ice' -n 'Bibata Modern Ice' -c 'White and rounded egde Bibata cursors with size 16'
```
#### Build Only `XCursor` theme
```bash
make unix
```
#### Customize `XCursor` size
```bash
make unix X_SIZES=22 # Only built '22px' pixel-size.
make unix X_SIZES=22 24 32 # Multiple sizes are provided with ' '(Space)
```
#### Install `XCursor` theme
```bash
make install # install as user
# OR
sudo make install # install as root
```
#### Build Only `Windows` theme
```bash
make windows
```
#### Customize `Windows Cursor` size
```bash
make windows WIN_SIZE=96 # Supports only one pixel-size
```
> Windows installations steps are same as [these](#windows).
## You may also like...
- [**Bibata Adapta**](https://gitlab.com/cscs/Bibata_AdaptaBreath_Cursors) - Bibata Based Cursor Made for AdaptaBreath and Manjaro.
@ -251,7 +261,7 @@ make windows WIN_SIZE=96 # Supports only one pixel-size
## Credit
[Loading Animation](https://loading.io/spinner/wedges/-pie-wedge-pizza-circle-round-rotate) ·
[Wedge Loading Animation](https://loading.io/spinner/wedges/-pie-wedge-pizza-circle-round-rotate) ·
[Adwaita](https://github.com/GNOME/adwaita-icon-theme) ·
[Dmz](https://github.com/GalliumOS/dmz-cursor-theme) ·
[Yaru](https://github.com/ubuntu/yaru)

View file

@ -1,24 +0,0 @@
all: install build render
.PHONY: all
clean:
@find . -type f -name "yarn.lock" -exec rm -rf "{}" +;
@find . -type d -name "node_modules" -exec rm -rf "{}" +;
node_modules:
@mkdir -p $@
install: node_modules package.json
@yarn install
build:
@yarn build
render_modern:
@yarn render:bibata-modern
render_original:
@yarn render:bibata-original
render: render_modern render_original

View file

@ -1,42 +0,0 @@
{
"name": "bibata-bitmapper",
"description": "A bitmapper CLI for Bibata cursor.",
"author": "Kaiz Khatri",
"version": "1.1.2",
"private": true,
"license": "GPL-3.0",
"main": "dist/cli.js",
"bin": {
"bibata-bitmapper": "dist/cli.js"
},
"repository": {
"type": "git",
"url": "git+https://github.com:ful1e5/Bibata_Cursor.git"
},
"scripts": {
"start": "nodemon --watch 'src/**/*.ts' --exec 'ts-node' src/cli.ts",
"test": "echo \"Error: no test specified\" && exit 1",
"build": "tsc -p .",
"render:bibata-modern": "node dist/cli.js modern",
"render:bibata-original": "node dist/cli.js original"
},
"dependencies": {
"commander": "^9.0.0",
"module-alias": "^2.2.2",
"pixelmatch": "^5.2.1",
"pngjs": "^6.0.0",
"puppeteer": "^13.4.1"
},
"devDependencies": {
"@types/module-alias": "^2.0.1",
"@types/pixelmatch": "^5.2.4",
"@types/pngjs": "^6.0.1",
"@types/puppeteer": "^5.4.5",
"nodemon": "^2.0.15",
"ts-node": "^10.6.0",
"typescript": "^4.6.2"
},
"_moduleAliases": {
"#root": "dist/"
}
}

File diff suppressed because it is too large Load diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

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