# midori **Repository Path**: GXDE-OS/midori ## Basic Information - **Project Name**: midori - **Description**: No description available - **Primary Language**: Unknown - **License**: LGPL-2.1 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-04-23 - **Last Updated**: 2025-04-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README [](https://circleci.com/gh/midori-browser/core) [](https://build.snapcraft.io/user/midori-browser/core) [](https://www.midori-browser.org/telegram) [](https://twitter.com/midoriweb) [](https://www.midori-browser.org/donate)
Midori a lightweight, fast and free web browser
 Midori is a lightweight yet powerful web browser which runs just as well on little embedded computers named for delicious pastries as it does on beefy machines with a core temperature exceeding that of planet earth. And it looks good doing that, too. Oh, and of course it's free software. **Privacy out of the box** * Adblock filter list support. * Private browsing. * Manage cookies and scripts. **Productivity features** * Open a 1000 tabs instantly. * Easy web apps creation. * Customizable side panels. * User scripts and styles a la Greasemonkey. * Web developer tools powered by WebKit. Please report comments, suggestions and bugs to: https://github.com/midori-browser/core/issues Join [the #midori IRC channel](https://www.midori-browser.org/irc) on Freenode or [the Telegram group](https://www.midori-browser.org/telegram)! # Installing Midori on Linux If [your distro supports snaps](https://docs.snapcraft.io/core/) you can install the **latest stable** version of Midori [from the snap store](https://snapcraft.io/midori) with a single command: snap install midori > **Spoilers:** For those more adventurous types out there, trying out the preview of the next version is only the switch of a channel away. # Building from source **Requirements** * GLib 2.48.0 * GTK+ 3.12 * gcr-3 2.32 * [WebKit2GTK+](https://webkitgtk.org/) 2.16.6 * libsoup 2.48.0 * sqlite 3.6.19 * [Vala](https://wiki.gnome.org/Projects/Vala) 0.30 * GCR 2.32 * Peas Install dependencies on Ubuntu or Debian based distros: sudo apt install valac libwebkit2gtk-4.0-dev libsoup-gnome2.4-dev libgcr-3-dev libpeas-dev libsqlite3-dev intltool libxml2-utils Use CMake to build Midori: mkdir _build cd _build cmake -DCMAKE_INSTALL_PREFIX=/usr .. make sudo make install > **Spoilers:** Pass `-G Ninja` to CMake to use [Ninja](http://martine.github.io/ninja) instead of make (install `ninja-build` on Ubuntu/ Debian). Midori can be **run without being installed**. _build/midori # Testing ## Unit tests You'll want to **unit test** the code if you're testing a new version or contributed your own changes: xvfb-run make check ## Manual checklist * Browser window starts up normally, with optional URL(s) on the command line * Tabs have icons, a close button if there's more than one and can be switched * Urlbar suggests from typed search or URL, completes from history and highlights key * Private data can be cleared * Shortcuts window shows most important hotkeys * Download button lists on-going and finished downloads * `javascript:alert("test")`, `javascript:confirm("test")` and `javascript:input("test")` work * Websites can (un)toggle fullscreen mode * Shrinking the window moves browser and page actions into the respective menus # Release process Update `CORE_VERSION` in `CMakeLists.txt` to `7.0`. Add a section to `ChangeLog`. git commit -p -v -m "Release Midori 7.0" git checkout -B release-7.0 git push origin HEAD git archive --prefix=midori-v7.0/ -o midori-v7.0.tar.gz -9 HEAD Propose a PR for the release. Publish the release on https://github.com/midori-browser/core/releases Promote snap on https://snapcraft.io/midori/release to the `stable` channel # Troubleshooting Testing an installed release may reveal crashers or memory corruption which require investigating from a local build and obtaining a stacktrace (backtrace, crash log). gdb _build/midori run … bt If the problem is a warning, not a crash GLib has a handy feature env G_MESSAGES_DEBUG=all gdb _build/midori On Windows you can open the folder where Midori is installed and double-click gdb.exe which opens a command window: file midori.exe run … bt To verify a regression you might need to revert a particular change: # Revert only d54c7e45 git revert d54c7e45 # Contributing code ## Coding style and quality Midori code should in general have: * 4 space indentation, no tabs * Between 80 to 120 columns * Use `//` or `/* */` style comments * Call variables `animal` and `animal_shelter` instead of ~camelCase~ * Keep a space between functions/ keywords and round parentheses * Prefer `new Gtk.Widget ()` over `using Gtk; new Widget ()` * `Midori` and `GLib` namespaces should be omitted * Don't use `private` specifiers (which is the default) * Stick to standard Vala-style curly parentheses on the same line * Cuddled `} else {` and `} catch (Error error) {` ## Working with Git If you haven't yet, [check that GitHub has your SSH key](https://github.com/settings/keys). > **Spoilers:** You can create an SSH key with **Passwords and Keys** aka **Seahorse** > or `ssh-keygen -t rsa` and specify `Host github.com` with `User git` in your SSH config. > See [GitHub docs](https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/) for further details. [Fork the project on GitHub](https://help.github.com/articles/fork-a-repo). # USERNAME is your GitHub username git clone git@github.com:USERNAME/core.git Prepare to pull in updates from upstream: git remote add upstream https://github.com/midori-browser/core.git > **Spoilers:** The code used to be hosted at `lp:midori` and `git.xfce.org/apps/midori` respectively. The development **master** (trunk, tip) is the latest iteration of the next release. git checkout upstream/master Pick a name for your feature branch: git checkout -B myfeature Remember to keep your branch updated: git pull -r upstream master Tell git your name if you haven't yet: git config user.email "