Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/YGGverse/Yoda
PHP-GTK Client for Gemini Protocol
https://github.com/YGGverse/Yoda
altweb browser composer gemini gemini-browser gemini-client gemini-php gemini-protocol gtk gtk3 net-php php php-cpp php-gtk smallweb yoda yoda-browser
Last synced: about 2 months ago
JSON representation
PHP-GTK Client for Gemini Protocol
- Host: GitHub
- URL: https://github.com/YGGverse/Yoda
- Owner: YGGverse
- License: mit
- Created: 2024-04-09T06:09:57.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-06-26T17:54:17.000Z (3 months ago)
- Last Synced: 2024-06-29T16:08:33.870Z (3 months ago)
- Topics: altweb, browser, composer, gemini, gemini-browser, gemini-client, gemini-php, gemini-protocol, gtk, gtk3, net-php, php, php-cpp, php-gtk, smallweb, yoda, yoda-browser
- Language: PHP
- Homepage:
- Size: 114 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-gemini - Yoda - GTK) - Experimental browser for Gemini Protocol based on [PHP-GTK](https://github.com/scorninpc/php-gtk3) and [gemini-php](https://github.com/YGGverse/gemini-php). (Clients / Graphical)
README
# Yoda is [PHP-GTK](https://github.com/scorninpc/php-gtk3) Browser for [Gemini protocol](https://geminiprotocol.net)
> [!IMPORTANT]
> Project in development!
>## Install
### Auto
* `git clone https://github.com/YGGverse/Yoda.git`
* `cd Yoda`
* Run `./INSTALL.sh` to auto-build Yoda for Linux systems, using latest [PHP](https://github.com/php/php-src), [PHP-CPP](https://github.com/fast-debug/PHP-CPP) and [PHP-GTK3](https://github.com/scorninpc/php-gtk3)This tool does not change global PHP version, not requires root permissions, but optionally install system dependencies, through `apt` or `yum`
#### After build
* To **launch**, open Yoda in application menu or use `yoda.sh` launcher generated
* To **update**, run `INSTALL.sh` again
* To **uninstall**, just remove `build` folder with profile data in `~/.yoda`### Manual
#### Environment
``` bash
apt install autoconf\
automake\
bison\
build-essential\
composer\
git\
libbz2-dev\
libcurl4-openssl-dev\
libfreetype6-dev\
libgladeui-dev\
libgtk-3-dev\
libgtksourceview-3.0-dev\
libjpeg-dev\
libonig-dev\
libpng-dev\
libpq-dev\
libreadline-dev\
libsqlite3-dev\
libssl-dev\
libtool\
libwebp-dev\
libwnck-dev\
libxml2-dev\
libxpm-dev\
libxslt1-dev\
libzip-dev\
re2c
```#### [PHP](https://github.com/php/php-src)
Make sure version 8.1 or above installed and configured with following options:
```
./configure --enable-mbstring\
--enable-pcntl\
--enable-shmop\
--enable-sockets\
--enable-static\
--with-gettext\
--with-openssl\
--with-pdo-sqlite
```#### [PHP-CPP](https://github.com/fast-debug/PHP-CPP)
Use official [documentation](https://www.php-cpp.com/documentation) for details.
Build from source:
* `git clone https://github.com/fast-debug/php-cpp.git`
* `cd php-cpp`
* `make && sudo make install`#### [PHP-GTK](https://github.com/scorninpc/php-gtk3)
Follow [installation guide](https://github.com/scorninpc/php-gtk3#acknowledgements) or use [binaries](https://github.com/scorninpc/php-gtk3/releases).
Build from source:
* `git clone https://github.com/fast-debug/php-gtk3.git`
* `cd php-gtk3`
* `make && sudo make install`#### Yoda
* `git clone https://github.com/YGGverse/Yoda.git`
* `cd Yoda`
* `composer install`#### Launch
``` bash
php -dextension=php-gtk3.so src/Yoda.php
```## Components
* [gemini-php](https://github.com/YGGverse/gemini-php) - Gemini protocol connections
* [gemtext-php](https://github.com/YGGverse/gemtext-php) - Gemtext operations
* [net-php](https://github.com/YGGverse/net-php) - DNS resolver and network address features
* [nex-php](https://github.com/YGGverse/nex-php) - NEX protocol connections