PHP-GTK Client for Gemini Protocol
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

95 lines
2.6 KiB

4 months ago
# Yoda is [PHP-GTK](https://github.com/scorninpc/php-gtk3) Browser for [Gemini protocol](https://geminiprotocol.net)
7 months ago
4 months ago
Project in development!
7 months ago
## Install
4 months ago
### Builder
4 months ago
Run `INSTALL.sh` in terminal to autobuild 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)
4 months ago
4 months ago
This tool does not change global PHP version, not requires root permissions, but optionally install system dependencies, through `apt` or `yum`
4 months ago
4 months ago
#### After build
4 months ago
* To **launch**, open Yoda in application menu or use `yoda.sh` launcher generated
4 months ago
* To **update**, run `INSTALL.sh` again
4 months ago
* To **uninstall**, just remove `build` folder with profile data in `~/.yoda`
4 months ago
### Manual
4 months ago
#### Environment
``` bash
apt install libpq-dev\
bison\
libreadline-dev\
git\
composer\
build-essential\
autoconf\
automake\
libtool\
re2c\
libxml2-dev\
libcurl4-openssl-dev\
libssl-dev\
libbz2-dev\
libjpeg-dev\
libpng-dev\
libxpm-dev\
libfreetype6-dev\
libzip-dev\
libsqlite3-dev\
libonig-dev\
libxslt1-dev\
libgtk-3-dev\
libgladeui-dev\
libgtksourceview-3.0-dev\
libwnck-dev
```
#### PHP
Make sure PHP version is 8.1 or above and includes following components:
```
./configure --with-openssl\
--with-gettext\
--with-pdo-mysql\
--enable-sockets\
--enable-mbstring\
--enable-shmop\
--enable-pcntl
```
#### PHP-CPP
4 months ago
PHP-GTK require [PHP-CPP](https://github.com/fast-debug/PHP-CPP) extension to interact native GTK3 libraries.
4 months ago
Use official [documentation](https://www.php-cpp.com/documentation) for details.
#### PHP-GTK
4 months ago
Build latest [PHP-GTK3](https://github.com/scorninpc/php-gtk3) or get binaries.
4 months ago
Follow official [guide](https://github.com/scorninpc/php-gtk3#acknowledgements) for details.
#### Yoda
1. `git clone https://github.com/YGGverse/Yoda.git`
2. `cd Yoda`
3. `composer update`
4 months ago
#### Launch
7 months ago
``` bash
/path/to/php-gtk3 src/Yoda.php
```
7 months ago
## 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