diff --git a/src/briar-gtk.in b/briar-gtk/briar-gtk.in
similarity index 96%
rename from src/briar-gtk.in
rename to briar-gtk/briar-gtk.in
index aac441d2941f2677e472055e4358dad05c27f954..ae773093941989fe26a94b5cee43190ced5787fa 100755
--- a/src/briar-gtk.in
+++ b/briar-gtk/briar-gtk.in
@@ -47,7 +47,7 @@ def prepare():
     prepare_resource()
 
 def start_application():
-    from briar.gtk.application import Application
+    from briar_gtk.application import Application
     sys.exit(Application().run(sys.argv))
 
 if __name__ == '__main__':
diff --git a/src/briar/gtk/application.py b/briar-gtk/briar_gtk/application.py
similarity index 92%
rename from src/briar/gtk/application.py
rename to briar-gtk/briar_gtk/application.py
index eddfebb09a84a081e9a42cbe30855c2c44bb5a15..b30cb81796d3b4fa884ce7e8ba48c89eb31a2189 100644
--- a/src/briar/gtk/application.py
+++ b/briar-gtk/briar_gtk/application.py
@@ -13,9 +13,9 @@ from gi.repository import Gdk, Gio, GLib, Gtk
 
 from briar_wrapper.api import Api
 
-from briar.gtk.define import APPLICATION_ID, APPLICATION_NAME
-from briar.gtk.define import APPLICATION_STYLING_PATH, BRIAR_HEADLESS_JAR
-from briar.gtk.window import Window
+from briar_gtk.define import APPLICATION_ID, APPLICATION_NAME
+from briar_gtk.define import APPLICATION_STYLING_PATH, BRIAR_HEADLESS_JAR
+from briar_gtk.window import Window
 
 
 class Application(Gtk.Application):
diff --git a/src/briar/gtk/container.py b/briar-gtk/briar_gtk/container.py
similarity index 100%
rename from src/briar/gtk/container.py
rename to briar-gtk/briar_gtk/container.py
diff --git a/src/briar/gtk/containers/add_contact.py b/briar-gtk/briar_gtk/containers/add_contact.py
similarity index 98%
rename from src/briar/gtk/containers/add_contact.py
rename to briar-gtk/briar_gtk/containers/add_contact.py
index 080bce18399af4adaa7a407616aa374b8a49c59b..f758e563c7bd45ca270714868df0cf3aa43d52c8 100644
--- a/src/briar/gtk/containers/add_contact.py
+++ b/briar-gtk/briar_gtk/containers/add_contact.py
@@ -7,8 +7,9 @@ from gettext import gettext as _
 from gi.repository import GLib
 
 from briar_wrapper.models.contacts import Contacts
-from briar.gtk.container import Container
-from briar.gtk.define import APP
+
+from briar_gtk.container import Container
+from briar_gtk.define import APP
 
 
 class AddContactContainer(Container):
diff --git a/src/briar/gtk/containers/chat.py b/briar-gtk/briar_gtk/containers/chat.py
similarity index 96%
rename from src/briar/gtk/containers/chat.py
rename to briar-gtk/briar_gtk/containers/chat.py
index 52ce9a8ca01e9da1ee0b1e102a77adb4df6a2d57..11e2e0b0414c67fa6ff8a2172e7c3b14bf6b5841 100644
--- a/src/briar/gtk/containers/chat.py
+++ b/briar-gtk/briar_gtk/containers/chat.py
@@ -5,8 +5,9 @@
 from gi.repository import GLib, Gtk
 
 from briar_wrapper.models.private_chat import PrivateChat
-from briar.gtk.container import Container
-from briar.gtk.define import APP
+
+from briar_gtk.container import Container
+from briar_gtk.define import APP
 
 
 class ChatContainer(Container):
diff --git a/src/briar/gtk/containers/login.py b/briar-gtk/briar_gtk/containers/login.py
similarity index 97%
rename from src/briar/gtk/containers/login.py
rename to briar-gtk/briar_gtk/containers/login.py
index 51b900a29c1f0c822bb9da56a1ed2ae126906057..7561f00bdc4d3b76623814bc6fa2ddc38286ad07 100644
--- a/src/briar/gtk/containers/login.py
+++ b/briar-gtk/briar_gtk/containers/login.py
@@ -4,8 +4,8 @@
 
 from gi.repository import GLib
 
-from briar.gtk.container import Container
-from briar.gtk.define import APP
+from briar_gtk.container import Container
+from briar_gtk.define import APP
 
 
 class LoginContainer(Container):
diff --git a/src/briar/gtk/containers/main.py b/briar-gtk/briar_gtk/containers/main.py
similarity index 96%
rename from src/briar/gtk/containers/main.py
rename to briar-gtk/briar_gtk/containers/main.py
index 66df9c540030846d762ae1a93a324f526a1fc6c2..144aa969329de9195fe568bb178a53373104a4ff 100644
--- a/src/briar/gtk/containers/main.py
+++ b/briar-gtk/briar_gtk/containers/main.py
@@ -5,8 +5,9 @@
 from gi.repository import GLib, Gtk
 
 from briar_wrapper.models.contacts import Contacts
-from briar.gtk.container import Container
-from briar.gtk.define import APP
+
+from briar_gtk.container import Container
+from briar_gtk.define import APP
 
 
 class MainContainer(Container):
diff --git a/src/briar/gtk/containers/registration.py b/briar-gtk/briar_gtk/containers/registration.py
similarity index 98%
rename from src/briar/gtk/containers/registration.py
rename to briar-gtk/briar_gtk/containers/registration.py
index 68a50f67e85cc793966f9b53a42fee1918ebe5f9..d98b0b5c6c0ec10f3214ac550a6c7f989778291f 100644
--- a/src/briar/gtk/containers/registration.py
+++ b/briar-gtk/briar_gtk/containers/registration.py
@@ -6,8 +6,8 @@ from gettext import gettext as _
 
 from gi.repository import GLib
 
-from briar.gtk.container import Container
-from briar.gtk.define import APP
+from briar_gtk.container import Container
+from briar_gtk.define import APP
 
 
 class RegistrationContainer(Container):
diff --git a/src/briar/gtk/containers/startup.py b/briar-gtk/briar_gtk/containers/startup.py
similarity index 70%
rename from src/briar/gtk/containers/startup.py
rename to briar-gtk/briar_gtk/containers/startup.py
index c6a1817c75dddedd6aeaa6e84ab2f782ec534f14..d379f0075841b4011d3347905ac681ff2a47421d 100644
--- a/src/briar/gtk/containers/startup.py
+++ b/briar-gtk/briar_gtk/containers/startup.py
@@ -2,10 +2,10 @@
 # SPDX-License-Identifier: AGPL-3.0-only
 # License-Filename: LICENSE.md
 
-from briar.gtk.container import Container
-from briar.gtk.containers.login import LoginContainer
-from briar.gtk.containers.registration import RegistrationContainer
-from briar.gtk.define import APP
+from briar_gtk.container import Container
+from briar_gtk.containers.login import LoginContainer
+from briar_gtk.containers.registration import RegistrationContainer
+from briar_gtk.define import APP
 
 
 class StartupContainer(Container):
diff --git a/src/briar/gtk/define.py b/briar-gtk/briar_gtk/define.py
similarity index 100%
rename from src/briar/gtk/define.py
rename to briar-gtk/briar_gtk/define.py
diff --git a/src/briar/gtk/toolbar.py b/briar-gtk/briar_gtk/toolbar.py
similarity index 97%
rename from src/briar/gtk/toolbar.py
rename to briar-gtk/briar_gtk/toolbar.py
index 64784d8acc67a525b6c0a1890cc455fca5522007..3c456f6a28e0f59d804a1e629fb0d331db9a26a5 100644
--- a/src/briar/gtk/toolbar.py
+++ b/briar-gtk/briar_gtk/toolbar.py
@@ -8,7 +8,7 @@
 
 from gi.repository import Gtk
 
-from briar.gtk.define import APPLICATION_NAME
+from briar_gtk.define import APPLICATION_NAME
 
 
 class Toolbar(Gtk.HeaderBar):
diff --git a/src/briar/gtk/window.py b/briar-gtk/briar_gtk/window.py
similarity index 90%
rename from src/briar/gtk/window.py
rename to briar-gtk/briar_gtk/window.py
index 665d0063a15b9ebe9314c3aa57ed2a0cd935f9cd..bd107602bd36a545211652c63c9af1f92b07b461 100644
--- a/src/briar/gtk/window.py
+++ b/briar-gtk/briar_gtk/window.py
@@ -4,12 +4,12 @@
 
 from gi.repository.Gtk import ApplicationWindow, Grid
 
-from briar.gtk.containers.add_contact import AddContactContainer
-from briar.gtk.containers.chat import ChatContainer
-from briar.gtk.containers.main import MainContainer
-from briar.gtk.containers.startup import StartupContainer
-from briar.gtk.define import APP, APPLICATION_ID, APPLICATION_NAME
-from briar.gtk.toolbar import Toolbar
+from briar_gtk.containers.add_contact import AddContactContainer
+from briar_gtk.containers.chat import ChatContainer
+from briar_gtk.containers.main import MainContainer
+from briar_gtk.containers.startup import StartupContainer
+from briar_gtk.define import APP, APPLICATION_ID, APPLICATION_NAME
+from briar_gtk.toolbar import Toolbar
 
 
 class Window(ApplicationWindow):
diff --git a/data/app.briar.gtk.appdata.xml.in b/briar-gtk/data/app.briar.gtk.appdata.xml.in
similarity index 100%
rename from data/app.briar.gtk.appdata.xml.in
rename to briar-gtk/data/app.briar.gtk.appdata.xml.in
diff --git a/data/app.briar.gtk.desktop.in b/briar-gtk/data/app.briar.gtk.desktop.in
similarity index 100%
rename from data/app.briar.gtk.desktop.in
rename to briar-gtk/data/app.briar.gtk.desktop.in
diff --git a/data/app.briar.gtk.gschema.xml b/briar-gtk/data/app.briar.gtk.gschema.xml
similarity index 100%
rename from data/app.briar.gtk.gschema.xml
rename to briar-gtk/data/app.briar.gtk.gschema.xml
diff --git a/data/icons/hicolor/16x16/apps/app.briar.gtk.png b/briar-gtk/data/icons/hicolor/16x16/apps/app.briar.gtk.png
similarity index 100%
rename from data/icons/hicolor/16x16/apps/app.briar.gtk.png
rename to briar-gtk/data/icons/hicolor/16x16/apps/app.briar.gtk.png
diff --git a/data/icons/hicolor/22x22/apps/app.briar.gtk.png b/briar-gtk/data/icons/hicolor/22x22/apps/app.briar.gtk.png
similarity index 100%
rename from data/icons/hicolor/22x22/apps/app.briar.gtk.png
rename to briar-gtk/data/icons/hicolor/22x22/apps/app.briar.gtk.png
diff --git a/data/icons/hicolor/256x256/apps/app.briar.gtk.png b/briar-gtk/data/icons/hicolor/256x256/apps/app.briar.gtk.png
similarity index 100%
rename from data/icons/hicolor/256x256/apps/app.briar.gtk.png
rename to briar-gtk/data/icons/hicolor/256x256/apps/app.briar.gtk.png
diff --git a/data/icons/hicolor/32x32/apps/app.briar.gtk.png b/briar-gtk/data/icons/hicolor/32x32/apps/app.briar.gtk.png
similarity index 100%
rename from data/icons/hicolor/32x32/apps/app.briar.gtk.png
rename to briar-gtk/data/icons/hicolor/32x32/apps/app.briar.gtk.png
diff --git a/data/icons/hicolor/48x48/apps/app.briar.gtk.png b/briar-gtk/data/icons/hicolor/48x48/apps/app.briar.gtk.png
similarity index 100%
rename from data/icons/hicolor/48x48/apps/app.briar.gtk.png
rename to briar-gtk/data/icons/hicolor/48x48/apps/app.briar.gtk.png
diff --git a/data/icons/hicolor/512x512/apps/app.briar.gtk.png b/briar-gtk/data/icons/hicolor/512x512/apps/app.briar.gtk.png
similarity index 100%
rename from data/icons/hicolor/512x512/apps/app.briar.gtk.png
rename to briar-gtk/data/icons/hicolor/512x512/apps/app.briar.gtk.png
diff --git a/data/icons/hicolor/scalable/apps/app.briar.gtk.svg b/briar-gtk/data/icons/hicolor/scalable/apps/app.briar.gtk.svg
similarity index 100%
rename from data/icons/hicolor/scalable/apps/app.briar.gtk.svg
rename to briar-gtk/data/icons/hicolor/scalable/apps/app.briar.gtk.svg
diff --git a/data/icons/meson.build b/briar-gtk/data/icons/meson.build
similarity index 100%
rename from data/icons/meson.build
rename to briar-gtk/data/icons/meson.build
diff --git a/data/meson.build b/briar-gtk/data/meson.build
similarity index 100%
rename from data/meson.build
rename to briar-gtk/data/meson.build
diff --git a/data/ui/add_contact.ui b/briar-gtk/data/ui/add_contact.ui
similarity index 100%
rename from data/ui/add_contact.ui
rename to briar-gtk/data/ui/add_contact.ui
diff --git a/data/ui/app.briar.gtk.gresource.xml b/briar-gtk/data/ui/app.briar.gtk.gresource.xml
similarity index 100%
rename from data/ui/app.briar.gtk.gresource.xml
rename to briar-gtk/data/ui/app.briar.gtk.gresource.xml
diff --git a/data/ui/application.css b/briar-gtk/data/ui/application.css
similarity index 100%
rename from data/ui/application.css
rename to briar-gtk/data/ui/application.css
diff --git a/data/ui/chat.ui b/briar-gtk/data/ui/chat.ui
similarity index 100%
rename from data/ui/chat.ui
rename to briar-gtk/data/ui/chat.ui
diff --git a/data/ui/login.ui b/briar-gtk/data/ui/login.ui
similarity index 100%
rename from data/ui/login.ui
rename to briar-gtk/data/ui/login.ui
diff --git a/data/ui/main.ui b/briar-gtk/data/ui/main.ui
similarity index 100%
rename from data/ui/main.ui
rename to briar-gtk/data/ui/main.ui
diff --git a/data/ui/registration.ui b/briar-gtk/data/ui/registration.ui
similarity index 100%
rename from data/ui/registration.ui
rename to briar-gtk/data/ui/registration.ui
diff --git a/data/ui/toolbar_start.ui b/briar-gtk/data/ui/toolbar_start.ui
similarity index 100%
rename from data/ui/toolbar_start.ui
rename to briar-gtk/data/ui/toolbar_start.ui
diff --git a/src/meson.build b/briar-gtk/meson.build
similarity index 81%
rename from src/meson.build
rename to briar-gtk/meson.build
index 5ee9da684efc5c1676dff0841c635b5794c52d40..6702618c8e6cfae821307f7f5bd5aca8a4f98e56 100644
--- a/src/meson.build
+++ b/briar-gtk/meson.build
@@ -3,7 +3,9 @@
 # License-Filename: LICENSE.md
 
 PACKAGE_DATA_DIR = join_paths(get_option('prefix'), get_option('datadir'), meson.project_name())
-MODULE_DIR = join_paths(PACKAGE_DATA_DIR, 'briar')
+
+subdir('data')
+subdir('po')
 
 python3 = import('python3')
 
@@ -21,4 +23,6 @@ configure_file(
   install_dir: get_option('bindir')
 )
 
-install_subdir('briar/gtk', install_dir: MODULE_DIR)
+install_subdir('briar_gtk', install_dir: PACKAGE_DATA_DIR)
+
+meson.add_install_script('meson_post_install.py')
diff --git a/src/meson_post_install.py b/briar-gtk/meson_post_install.py
similarity index 100%
rename from src/meson_post_install.py
rename to briar-gtk/meson_post_install.py
diff --git a/po/LINGUAS b/briar-gtk/po/LINGUAS
similarity index 100%
rename from po/LINGUAS
rename to briar-gtk/po/LINGUAS
diff --git a/po/POTFILES b/briar-gtk/po/POTFILES
similarity index 100%
rename from po/POTFILES
rename to briar-gtk/po/POTFILES
diff --git a/po/briar-gtk.pot b/briar-gtk/po/briar-gtk.pot
similarity index 100%
rename from po/briar-gtk.pot
rename to briar-gtk/po/briar-gtk.pot
diff --git a/po/de.po b/briar-gtk/po/de.po
similarity index 100%
rename from po/de.po
rename to briar-gtk/po/de.po
diff --git a/po/es.po b/briar-gtk/po/es.po
similarity index 100%
rename from po/es.po
rename to briar-gtk/po/es.po
diff --git a/po/meson.build b/briar-gtk/po/meson.build
similarity index 100%
rename from po/meson.build
rename to briar-gtk/po/meson.build
diff --git a/tests/__init__.py b/briar-gtk/tests/__init__.py
similarity index 100%
rename from tests/__init__.py
rename to briar-gtk/tests/__init__.py
diff --git a/tests/briar/gtk/test_application.py b/briar-gtk/tests/briar_gtk/test_application.py
similarity index 79%
rename from tests/briar/gtk/test_application.py
rename to briar-gtk/tests/briar_gtk/test_application.py
index 16076374a34a664f8b6e216a94d75ce39f0250a2..5707375e7da674f22a35bbf4431f3fbb265e56b0 100644
--- a/tests/briar/gtk/test_application.py
+++ b/briar-gtk/tests/briar_gtk/test_application.py
@@ -7,18 +7,19 @@ from unittest.mock import Mock
 import pytest
 
 from briar_wrapper.api import Api
-from briar.gtk.application import Application
-from briar.gtk.define import APPLICATION_NAME, APPLICATION_STYLING_PATH
-from briar.gtk.define import BRIAR_HEADLESS_JAR
-from briar.gtk.window import Window
+
+from briar_gtk.application import Application
+from briar_gtk.define import APPLICATION_NAME, APPLICATION_STYLING_PATH
+from briar_gtk.define import BRIAR_HEADLESS_JAR
+from briar_gtk.window import Window
 
 
 def test_do_startup(mocker):
     do_startup_mock = mocker.patch("gi.repository.Gtk.Application.do_startup")
     _setup_styling_mock = mocker.patch(
-        "briar.gtk.application.Application._setup_styling")
+        "briar_gtk.application.Application._setup_styling")
     _setup_api_mock = mocker.patch(
-        "briar.gtk.application.Application._setup_api")
+        "briar_gtk.application.Application._setup_api")
 
     Application().do_startup()
 
@@ -29,7 +30,7 @@ def test_do_startup(mocker):
 
 def test_do_activate(mocker):
     _setup_window_mock = mocker.patch(
-        "briar.gtk.application.Application._setup_window")
+        "briar_gtk.application.Application._setup_window")
 
     Application().do_activate()
 
@@ -39,8 +40,8 @@ def test_do_activate(mocker):
 def test_quit(mocker):
     api_mock = mocker.patch("briar_wrapper.api.Api")
     api_stop_mock = mocker.patch("briar_wrapper.api.Api.stop")
-    window_mock = mocker.patch("briar.gtk.window.Window")
-    window_hide_mock = mocker.patch("briar.gtk.window.Window.hide")
+    window_mock = mocker.patch("briar_gtk.window.Window")
+    window_hide_mock = mocker.patch("briar_gtk.window.Window.hide")
     quit_mock = mocker.patch("gi.repository.Gio.Application.quit")
 
     application = Application()
@@ -105,9 +106,9 @@ def test_setup_api(mocker):
 
 
 def test_setup_window(mocker):
-    mocker.patch("briar.gtk.window.Window.__init__").return_value = None
-    window_show_mock = mocker.patch("briar.gtk.window.Window.show")
-    window_present_mock = mocker.patch("briar.gtk.window.Window.present")
+    mocker.patch("briar_gtk.window.Window.__init__").return_value = None
+    window_show_mock = mocker.patch("briar_gtk.window.Window.show")
+    window_present_mock = mocker.patch("briar_gtk.window.Window.present")
 
     Application()._setup_window()
 
@@ -116,7 +117,7 @@ def test_setup_window(mocker):
 
 
 def test_setup_window_has_attribute(mocker):
-    mocker.patch("briar.gtk.window.Window.__init__").return_value = None
+    mocker.patch("briar_gtk.window.Window.__init__").return_value = None
     window_mock = Mock()
 
     application = Application()
@@ -129,9 +130,9 @@ def test_setup_window_has_attribute(mocker):
 
 
 def test_setup_window_has_none_attribute(mocker):
-    mocker.patch("briar.gtk.window.Window.__init__").return_value = None
-    window_show_mock = mocker.patch("briar.gtk.window.Window.show")
-    window_present_mock = mocker.patch("briar.gtk.window.Window.present")
+    mocker.patch("briar_gtk.window.Window.__init__").return_value = None
+    window_show_mock = mocker.patch("briar_gtk.window.Window.show")
+    window_present_mock = mocker.patch("briar_gtk.window.Window.present")
 
     application = Application()
 
diff --git a/tests/briar/gtk/test_toolbar.py b/briar-gtk/tests/briar_gtk/test_toolbar.py
similarity index 87%
rename from tests/briar/gtk/test_toolbar.py
rename to briar-gtk/tests/briar_gtk/test_toolbar.py
index 065101a2f413cafa0f089ed2fe8870c6d7456610..d5215eccb2256c9c0cc1b28d3e5ceb57d9f41d98 100644
--- a/tests/briar/gtk/test_toolbar.py
+++ b/briar-gtk/tests/briar_gtk/test_toolbar.py
@@ -5,14 +5,14 @@
 import pytest
 from unittest.mock import Mock
 
-from briar.gtk.toolbar import Toolbar
+from briar_gtk.toolbar import Toolbar
 
 
 def test_show_back_button(mocker):
     get_object_mock = mocker.patch("gi.repository.Gtk.Builder.get_object")
     back_button_mock = get_object_mock.return_value
     callback = Mock()
-    mocker.patch("briar.gtk.toolbar.Toolbar._setup_toolbar")
+    mocker.patch("briar_gtk.toolbar.Toolbar._setup_toolbar")
 
     Toolbar().show_back_button(True, callback)
 
@@ -25,7 +25,7 @@ def test_show_back_button(mocker):
 def test_show_back_button_without_callback(mocker):
     get_object_mock = mocker.patch("gi.repository.Gtk.Builder.get_object")
     back_button_mock = get_object_mock.return_value
-    mocker.patch("briar.gtk.toolbar.Toolbar._setup_toolbar")
+    mocker.patch("briar_gtk.toolbar.Toolbar._setup_toolbar")
 
     with pytest.raises(Exception,
                        match="Callback needed when showing back button"):
@@ -40,7 +40,7 @@ def test_show_back_button_without_callback(mocker):
 def test_hide_back_button(mocker):
     get_object_mock = mocker.patch("gi.repository.Gtk.Builder.get_object")
     back_button_mock = get_object_mock.return_value
-    mocker.patch("briar.gtk.toolbar.Toolbar._setup_toolbar")
+    mocker.patch("briar_gtk.toolbar.Toolbar._setup_toolbar")
 
     Toolbar().show_back_button(False)
 
diff --git a/tests/conftest.py b/briar-gtk/tests/conftest.py
similarity index 100%
rename from tests/conftest.py
rename to briar-gtk/tests/conftest.py
diff --git a/meson.build b/meson.build
index 4732c356a517e57ed4ccd110bd358654440240c6..b85ce4248c78be7abbee51a9beb5f465247b9716 100644
--- a/meson.build
+++ b/meson.build
@@ -10,8 +10,4 @@ project(
 
 i18n = import('i18n')
 
-subdir('data')
-subdir('src')
-subdir('po')
-
-meson.add_install_script('src/meson_post_install.py')
+subdir('briar-gtk')
diff --git a/tools/generate_data.sh b/tools/generate_data.sh
index af6de4eaaf723b6912a8e32effb7a1b2d472228e..8e1c16aa46e3af5ec8a30462d4bf50d8a95a952a 100755
--- a/tools/generate_data.sh
+++ b/tools/generate_data.sh
@@ -11,14 +11,14 @@ function generate_resource()
     echo '<?xml version="1.0" encoding="UTF-8"?>'
     echo '<gresources>'
     echo '  <gresource prefix="/app/briar/gtk">'
-    for file in data/ui/*.css
+    for file in briar-gtk/data/ui/*.css
     do
         echo -n '    <file compressed="true">'
         echo -n 'ui/'
         echo -n $(basename $file)
         echo '</file>'
     done
-    for file in data/ui/*.ui
+    for file in briar-gtk/data/ui/*.ui
     do
         echo -n '    <file compressed="true" preprocess="xml-stripblanks">'
         echo -n 'ui/'
@@ -31,10 +31,10 @@ function generate_resource()
 
 function generate_po()
 {
-    cd po
+    cd briar-gtk/po
     # git pull https://www.transifex.com/otf/briar/
     >briar-gtk.pot
-    for file in ../data/app.briar.gtk.gschema.xml ../data/ui/*.ui $(find "../src/briar" -name '*.py');
+    for file in ../data/app.briar.gtk.gschema.xml ../data/ui/*.ui $(find "../briar_gtk" -name '*.py');
     do
         xgettext --from-code=UTF-8 -j $file -o briar-gtk.pot
     done
@@ -48,5 +48,5 @@ function generate_po()
     done
 }
 
-generate_resource > data/ui/app.briar.gtk.gresource.xml
+generate_resource > briar-gtk/data/ui/app.briar.gtk.gresource.xml
 generate_po
diff --git a/tools/tests/test-pycodestyle.sh b/tools/tests/test-pycodestyle.sh
index 1b4d28e6d42220b6a889608ae28089a2d88a1ce3..71bc7c59224edf15745b8fe30c69ad767fabbf00 100755
--- a/tools/tests/test-pycodestyle.sh
+++ b/tools/tests/test-pycodestyle.sh
@@ -3,4 +3,4 @@
 # SPDX-License-Identifier: AGPL-3.0-only
 # License-Filename: LICENSE.md
 
-pycodestyle --show-source --show-pep8 src tests
+pycodestyle --show-source --show-pep8 briar-gtk/briar_gtk briar-gtk/tests
diff --git a/tools/tests/test-pylint.sh b/tools/tests/test-pylint.sh
index 427e9b3f1beb63d8769b7e10349ea6b92dcd21e3..3b43e0335a4bdd7d7eecd1a659ae53e47fd9ff6f 100755
--- a/tools/tests/test-pylint.sh
+++ b/tools/tests/test-pylint.sh
@@ -3,4 +3,4 @@
 # SPDX-License-Identifier: AGPL-3.0-only
 # License-Filename: LICENSE.md
 
-pylint src tests
+pylint briar-gtk/briar_gtk briar-gtk/tests
diff --git a/tools/tests/test-pytest.sh b/tools/tests/test-pytest.sh
index 4c8d0782d367fad3b6b0cfddc0432090b329b577..b49f07b1483862354cd9bfca5e1faa972ad6b2f1 100755
--- a/tools/tests/test-pytest.sh
+++ b/tools/tests/test-pytest.sh
@@ -3,4 +3,4 @@
 # SPDX-License-Identifier: AGPL-3.0-only
 # License-Filename: LICENSE.md
 
-PYTHONPATH=src pytest --cov=src tests/
+PYTHONPATH=briar-gtk/briar_gtk pytest --cov=briar_gtk briar-gtk/tests/