Backup mirror of the Odysseus web browser for elementary OS and other Free Desktops.
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.
Adrian Cochrane 727f2dc60c
Merge pull request #155 from NathanBnm/master
3 weeks ago
bin Keep the translations in sorted order. 7 months ago
data Add french translations 3 weeks ago
debian Update package description to match Appstream 3 months ago
ext Fix Loki build. 5 months ago
po Update fr.po 3 weeks ago
src Visual fix: ensure status icons are visually linked to addressbar. 3 months ago
viewer Create new app icon to fit in better with elementary. 1 year ago
.gitignore First! 2 years ago
.travis.yml Update .travis.yml 3 months ago
CODE OF CONDUCT.md Create CODE OF CONDUCT.md 2 months ago
CONTRIBUTING.md Update CONTRIBUTING.md 5 months ago
COPYING Licensing Odysseus under the GPL. 2 years ago
README.md Describe new dependency in build instructions. 4 months ago
make-full.sh Commit new messages, with i18n build system fixes. 11 months ago
meson.build Fix Loki build. 5 months ago
meson_options.txt Build: commit missing file. 5 months ago

README.md

Odysseus web browser

Build Status

A simple and performant yet powerful elementary OS-style window onto the open decentralized web.

Odysseus is already and will continue to be a convenient, privacy-respecting, ethically designed, and opensource (under the GPLv3+ license) web browser that should run great on any free desktop. However work is ongoing to make Odysseus more convenient with handy navigation aids that gently and unobtrusively guide you wherever you want to go online.

In doing so Odysseus aims to help you focus on the webpages that matter to you, and to support the open decentralized web over the centralized services of today.

Get it on AppCenter or download a stable release

Technical Architecture

In a nutshell Odysseus pulls together WebKitGTK and SQLite using GTK/Granite, splitting off minor enhancements to it’s core UI into builtin “traits”.

At the same time Odysseus pulls together the same SQLite database, web-APIs, and more into a templating language. Which is then used to develop helpful error pages and handy navigation aids accessible via a custom odysseus: URI scheme.

Building

First ensure Git, Meson, Ninja, and the Vala compiler are installed, along with the GTK+ 3, Granite, WebKit2 GTK, LibJSON GLib, LibSoup 2.4, SQLite 3, LibUnity, LibAppStream, LibGCR 3 developer packages.

On elementary OS these dependencies can be installed with:

sudo apt install meson valac libgtk-3-dev libsqlite3-dev libwebkit2gtk-4.0-dev libgranite-dev
sudo apt install libjson-glib-dev libsoup2.4-dev libunity-dev libappstream-dev libgcr-3-dev

If your on other Debian-based distributions these commands should still work, except you may find the libgranite-dev package is unavailable. You may need to follow their installation instructions.

Then within the repository’s root run the fullowing commands (or some OS-specific variation):

mkdir build
cd build
meson ..
ninja
sudo ninja install

Contributing

For anyone interested in contributing new features, fixes, etc to Odysseus, pull requests are always welcome and there is a discussion Matrix room for you to discuss your ideas or get help. If you don’t know where to start, try one of these feature requests.

If you want to help teach Oddysseus a new language, please visit https://github.com/alcinnz/Odysseus/wiki/Localizing-Odysseus. Work is ongoing to make this easier.