Skip to content

Commit

Permalink
Source Code Init
Browse files Browse the repository at this point in the history
Basmala
  • Loading branch information
ful1e5 committed Nov 2, 2022
1 parent 9896a21 commit f3a3d19
Show file tree
Hide file tree
Showing 369 changed files with 2,305 additions and 0 deletions.
1 change: 1 addition & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
github: ful1e5
42 changes: 42 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: build

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

# https://github.com/returntocorp/semgrep/issues/4794
- name: Fixing 'attr' module error
run: pip install --force-reinstall --upgrade attrs

- name: Building `Banana` Cursors
run: ctgen build.toml
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
bin
themes

# Logs
logs
*.log
Expand Down
19 changes: 19 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [unreleased]

## [v1.0.0] - 02 November 2022

### Added

- Initial release 🎊
- Logo and badges
- CI/CD Pipelines

[unreleased]: https://github.com/ful1e5/banana-cursor/compare/v1.0.0...main
[v1.0.0]: https://github.com/ful1e5/banana-cursor/tree/v1.0.0
208 changes: 208 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,210 @@
# banana-cursor

The banana cursor.

[![build](https://github.com/ful1e5/banana-cursor/actions/workflows/build.yml/badge.svg)](https://github.com/ful1e5/banana-cursor/actions/workflows/build.yml)

## Banana Cursor needs your Input

Until 2021 my cursors projects were well 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 <500$, It is now dependent on community funding and sponsorships. If you want to help me to maintain
Banana Cursor and my other open source projects actively, consider sponsoring my work on [GitHub Sponsor](https://github.com/sponsors/ful1e5)
or DM me on [Twitter](https://twitter.com/ful1e5) if your company would like to support my projects,
I will gladly look into it and post your avatar in the project's README.

I appreciate all the wonderful people who patronize and sponsoring my work.

## Sponsors

<!-- Add your name or avatar here with the Pull Request in case I missed it. -->

N/A

---

![Banana](https://imgur.com/pCoon2Q.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/rL9ngfrDJbXqNW4pUESANY/banana-cursor?node-id=0%3A1).
#### Cursor Sizes

<kbd>22</kbd>
<kbd>24</kbd>
<kbd>28</kbd>
<kbd>32</kbd>
<kbd>40</kbd>
<kbd>48</kbd>
<kbd>56</kbd>
<kbd>64</kbd>
<kbd>72</kbd>
<kbd>80</kbd>
<kbd>88</kbd>
<kbd>96</kbd>

## Cursor Sizes

### Xcursor Sizes:

<kbd>22</kbd>
<kbd>24</kbd>
<kbd>28</kbd>
<kbd>32</kbd>
<kbd>40</kbd>
<kbd>48</kbd>
<kbd>56</kbd>
<kbd>64</kbd>
<kbd>72</kbd>
<kbd>80</kbd>
<kbd>88</kbd>
<kbd>96</kbd>

### Windows Cursor Size:

- <kbd>16x16</kbd> - Small
- <kbd>24x24</kbd> - Regular
- <kbd>32x32</kbd> - Large
- <kbd>48x48</kbd> - Extra Large

## How to get it

### Easiest Way

You can download latest `stable` & `development` releases from
[Release Page](https://github.com/ful1e5/banana-cursor/releases).

## Installing Banana Cursor

#### Linux/X11

**Installation:**

```bash
tar -xvf Banana.tar.gz # extract `Banana.tar.gz`
mv Banana ~/.icons/ # Install to local users
sudo mv Banana /usr/share/icons/ # Install to all users
```

**Uninstallation:**

```bash
rm ~/.icons/Banana # Remove from local users
sudo rm /usr/share/icons/Banana # Remove from all users
```

#### Windows

**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,
and select **Banana Cursors**.
5. Click '**Apply**'.

**Uninstallation:**

Run the `uninstall.bat` script packed with the `.zip` archive

**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.
3. Go to `Cursors` folder and click on `Schemes` folder - all the available custom cursors that are
installed will be listed here.
4. **Right Click** on the name of cursor file you want to uninstall; for eg.: _Banana Cursors_ and

## Build From Source

#### Notes

- Banana 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 Banana's colors, and bitmaps, or generate a png
file from a svg, Then you can use yarn because bitmapper is written in TypeScript.

### 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)

### Quick start

1. Install [build prerequisites](#build-prerequisites) on your system
2. `https://github.com/ful1e5/banana-cursor`
3. `cd banana-cursor && yarn build`
4. See [Installing Banana Cursor](#installing-banana-cursor).
click `Delete`.
5. Click '**yes**' when prompted.

### Building

> **Note**
> Bitmaps are already generated in the `bitmaps` directory and **managed by the maintainer**
> (do not edit them directly).
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`).

#### `yarn build` aberration

Here are the default commands we used to build the Banana-cursor and packed them into `yarn build`:

```bash
ctgen build.toml
```

Afterwards, the themes can be found in the `themes` directory.

#### 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 -c 'Banana cursors with size 16'
```

You can also customize output directory with `-o` option:

```bash
ctgen build.toml -s 16 -p windows -o 'out' -c 'Banana cursors with size 16'
```

##### Customize XCursor size

To build XCursor with size `16`:

```bash
ctgen build.toml -s 16 -p x11 -c 'Banana cursors with size 16'
```

You can also assign multiple sizes to `ctgen` for XCursors build:

```bash
ctgen build.toml -s 16 24 32 -p x11 -c 'Banana cursors with size 16'
```

# Bugs

Bugs should be reported [here](https://github.com/ful1e5/banana-cursor/issues) on the Github issues page.

# Getting Help

You can create a **issue**, I will help you.
Binary file added bitmaps/Banana/X_cursor.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/all-scroll.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/bd_double_arrow.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/bottom_left_corner.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/bottom_right_corner.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/bottom_side.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/center_ptr.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/col-resize.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/color-picker.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/context-menu.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/copy.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/cross.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/crossed_circle.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/dnd_no_drop.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/dotbox.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/fd_double_arrow.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/hand1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/hand2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/left_ptr.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/left_ptr_watch-0001.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/left_ptr_watch-0002.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/left_ptr_watch-0003.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/left_ptr_watch-0004.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/left_ptr_watch-0005.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/left_ptr_watch-0006.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added bitmaps/Banana/left_ptr_watch-0007.png
Binary file added bitmaps/Banana/left_ptr_watch-0008.png
Binary file added bitmaps/Banana/left_ptr_watch-0009.png
Binary file added bitmaps/Banana/left_ptr_watch-0010.png
Binary file added bitmaps/Banana/left_ptr_watch-0011.png
Binary file added bitmaps/Banana/left_ptr_watch-0012.png
Binary file added bitmaps/Banana/left_ptr_watch-0013.png
Binary file added bitmaps/Banana/left_ptr_watch-0014.png
Binary file added bitmaps/Banana/left_ptr_watch-0015.png
Binary file added bitmaps/Banana/left_ptr_watch-0016.png
Binary file added bitmaps/Banana/left_ptr_watch-0017.png
Binary file added bitmaps/Banana/left_ptr_watch-0018.png
Binary file added bitmaps/Banana/left_ptr_watch-0019.png
Binary file added bitmaps/Banana/left_ptr_watch-0020.png
Binary file added bitmaps/Banana/left_ptr_watch-0021.png
Binary file added bitmaps/Banana/left_ptr_watch-0022.png
Binary file added bitmaps/Banana/left_ptr_watch-0023.png
Binary file added bitmaps/Banana/left_ptr_watch-0024.png
Binary file added bitmaps/Banana/left_ptr_watch-0025.png
Binary file added bitmaps/Banana/left_ptr_watch-0026.png
Binary file added bitmaps/Banana/left_ptr_watch-0027.png
Binary file added bitmaps/Banana/left_ptr_watch-0028.png
Binary file added bitmaps/Banana/left_ptr_watch-0029.png
Binary file added bitmaps/Banana/left_ptr_watch-0030.png
Binary file added bitmaps/Banana/left_ptr_watch-0031.png
Binary file added bitmaps/Banana/left_ptr_watch-0032.png
Binary file added bitmaps/Banana/left_ptr_watch-0033.png
Binary file added bitmaps/Banana/left_ptr_watch-0034.png
Binary file added bitmaps/Banana/left_ptr_watch-0035.png
Binary file added bitmaps/Banana/left_ptr_watch-0036.png
Binary file added bitmaps/Banana/left_ptr_watch-0037.png
Binary file added bitmaps/Banana/left_ptr_watch-0038.png
Binary file added bitmaps/Banana/left_ptr_watch-0039.png
Binary file added bitmaps/Banana/left_ptr_watch-0040.png
Binary file added bitmaps/Banana/left_ptr_watch-0041.png
Binary file added bitmaps/Banana/left_ptr_watch-0042.png
Binary file added bitmaps/Banana/left_ptr_watch-0043.png
Binary file added bitmaps/Banana/left_ptr_watch-0044.png
Binary file added bitmaps/Banana/left_ptr_watch-0045.png
Binary file added bitmaps/Banana/left_ptr_watch-0046.png
Binary file added bitmaps/Banana/left_ptr_watch-0047.png
Binary file added bitmaps/Banana/left_ptr_watch-0048.png
Binary file added bitmaps/Banana/left_ptr_watch-0049.png
Binary file added bitmaps/Banana/left_ptr_watch-0050.png
Binary file added bitmaps/Banana/left_ptr_watch-0051.png
Binary file added bitmaps/Banana/left_ptr_watch-0052.png
Binary file added bitmaps/Banana/left_ptr_watch-0053.png
Binary file added bitmaps/Banana/left_ptr_watch-0054.png
Binary file added bitmaps/Banana/left_ptr_watch-0055.png
Binary file added bitmaps/Banana/left_ptr_watch-0056.png
Binary file added bitmaps/Banana/left_ptr_watch-0057.png
Binary file added bitmaps/Banana/left_ptr_watch-0058.png
Binary file added bitmaps/Banana/left_ptr_watch-0059.png
Binary file added bitmaps/Banana/left_ptr_watch-0060.png
Binary file added bitmaps/Banana/left_ptr_watch-0061.png
Binary file added bitmaps/Banana/left_ptr_watch-0062.png
Binary file added bitmaps/Banana/left_ptr_watch-0063.png
Binary file added bitmaps/Banana/left_ptr_watch-0064.png
Binary file added bitmaps/Banana/left_ptr_watch-0065.png
Binary file added bitmaps/Banana/left_ptr_watch-0066.png
Binary file added bitmaps/Banana/left_side.png
Binary file added bitmaps/Banana/link.png
Binary file added bitmaps/Banana/move.png
Binary file added bitmaps/Banana/pencil.png
Binary file added bitmaps/Banana/pirate.png
Binary file added bitmaps/Banana/plus.png
Binary file added bitmaps/Banana/question_arrow.png
Binary file added bitmaps/Banana/right_ptr.png
Binary file added bitmaps/Banana/right_side.png
Binary file added bitmaps/Banana/row-resize.png
Binary file added bitmaps/Banana/sb_down_arrow.png
Binary file added bitmaps/Banana/sb_h_double_arrow.png
Binary file added bitmaps/Banana/sb_left_arrow.png
Binary file added bitmaps/Banana/sb_right_arrow.png
Binary file added bitmaps/Banana/sb_up_arrow.png
Binary file added bitmaps/Banana/sb_v_double_arrow.png
Binary file added bitmaps/Banana/top_left_corner.png
Binary file added bitmaps/Banana/top_right_corner.png
Binary file added bitmaps/Banana/top_side.png
Binary file added bitmaps/Banana/vertical-text.png
Binary file added bitmaps/Banana/wait-0001.png
Binary file added bitmaps/Banana/wait-0002.png
Binary file added bitmaps/Banana/wait-0003.png
Binary file added bitmaps/Banana/wait-0004.png
Binary file added bitmaps/Banana/wait-0005.png
Binary file added bitmaps/Banana/wait-0006.png
Binary file added bitmaps/Banana/wait-0007.png
Binary file added bitmaps/Banana/wait-0008.png
Binary file added bitmaps/Banana/wait-0009.png
Binary file added bitmaps/Banana/wait-0010.png
Binary file added bitmaps/Banana/wait-0011.png
Binary file added bitmaps/Banana/wait-0012.png
Binary file added bitmaps/Banana/wait-0013.png
Binary file added bitmaps/Banana/wait-0014.png
Binary file added bitmaps/Banana/wait-0015.png
Binary file added bitmaps/Banana/wait-0016.png
Binary file added bitmaps/Banana/wait-0017.png
Binary file added bitmaps/Banana/wait-0018.png
Binary file added bitmaps/Banana/wait-0019.png
Binary file added bitmaps/Banana/wait-0020.png
Binary file added bitmaps/Banana/wait-0021.png
Binary file added bitmaps/Banana/wait-0022.png
Binary file added bitmaps/Banana/wait-0023.png
Binary file added bitmaps/Banana/wait-0024.png
Binary file added bitmaps/Banana/wait-0025.png
Binary file added bitmaps/Banana/wait-0026.png
Binary file added bitmaps/Banana/wait-0027.png
Binary file added bitmaps/Banana/wait-0028.png
Binary file added bitmaps/Banana/wait-0029.png
Binary file added bitmaps/Banana/wait-0030.png
Binary file added bitmaps/Banana/wait-0031.png
Binary file added bitmaps/Banana/wait-0032.png
Binary file added bitmaps/Banana/wait-0033.png
Binary file added bitmaps/Banana/wait-0034.png
Binary file added bitmaps/Banana/wait-0035.png
Binary file added bitmaps/Banana/wait-0036.png
Binary file added bitmaps/Banana/wait-0037.png
Binary file added bitmaps/Banana/wait-0038.png
Binary file added bitmaps/Banana/wait-0039.png
Binary file added bitmaps/Banana/wait-0040.png
Binary file added bitmaps/Banana/wait-0041.png
Binary file added bitmaps/Banana/wait-0042.png
Binary file added bitmaps/Banana/wait-0043.png
Binary file added bitmaps/Banana/wait-0044.png
Binary file added bitmaps/Banana/wait-0045.png
Binary file added bitmaps/Banana/wait-0046.png
Binary file added bitmaps/Banana/wait-0047.png
Binary file added bitmaps/Banana/wait-0048.png
Binary file added bitmaps/Banana/wait-0049.png
Binary file added bitmaps/Banana/wait-0050.png
Binary file added bitmaps/Banana/wait-0051.png
Binary file added bitmaps/Banana/wait-0052.png
Binary file added bitmaps/Banana/wait-0053.png
Binary file added bitmaps/Banana/wait-0054.png
Binary file added bitmaps/Banana/wait-0055.png
Binary file added bitmaps/Banana/wait-0056.png
Binary file added bitmaps/Banana/wait-0057.png
Binary file added bitmaps/Banana/wait-0058.png
Binary file added bitmaps/Banana/wait-0059.png
Binary file added bitmaps/Banana/wait-0060.png
Binary file added bitmaps/Banana/wait-0061.png
Binary file added bitmaps/Banana/wait-0062.png
Binary file added bitmaps/Banana/wait-0063.png
Binary file added bitmaps/Banana/wait-0064.png
Binary file added bitmaps/Banana/wait-0065.png
Binary file added bitmaps/Banana/wait-0066.png
Binary file added bitmaps/Banana/wayland-cursor.png
Binary file added bitmaps/Banana/xterm.png
Binary file added bitmaps/Banana/zoom-in.png
Binary file added bitmaps/Banana/zoom-out.png
Loading

0 comments on commit f3a3d19

Please sign in to comment.