diff --git a/assets/briar.icns b/assets/briar.icns
new file mode 100644
index 0000000000000000000000000000000000000000..f913c6830bcc6eee4e105dc7896c8a732da3bc98
Binary files /dev/null and b/assets/briar.icns differ
diff --git a/assets/logo_circle.svg b/assets/logo_circle.svg
new file mode 100644
index 0000000000000000000000000000000000000000..20b6cabbbc45fcf7d7690b6ba5b6c713b14df539
--- /dev/null
+++ b/assets/logo_circle.svg
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Ebene_1"
+   x="0px"
+   y="0px"
+   viewBox="0 0 330.00001 330.00001"
+   xml:space="preserve"
+   inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"
+   sodipodi:docname="logo_circle.svg"
+   width="330"
+   height="330"><metadata
+     id="metadata61"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+     id="defs59" /><sodipodi:namedview
+     pagecolor="#000000"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1680"
+     inkscape:window-height="993"
+     id="namedview57"
+     showgrid="false"
+     inkscape:zoom="1.2101234"
+     inkscape:cx="50.121881"
+     inkscape:cy="156.73039"
+     inkscape:window-x="0"
+     inkscape:window-y="0"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="Ebene_1" /><style
+     type="text/css"
+     id="style3">
+	.st0{fill:#FFFFFF;}
+	.st1{display:none;fill:#87C214;}
+	.st2{fill:#87C214;}
+	.st3{display:none;fill:#FFFFFF;}
+	.st4{fill:#95D220;}
+	.st5{display:none;fill:#95D220;}
+</style><circle
+     style="fill:#ffffff"
+     id="circle7"
+     cy="165"
+     cx="165"
+     class="st0"
+     r="165" /><g
+     id="g1059"><path
+       class="st2"
+       d="m 94.299994,145.70001 v 119.5 c 0,9.7 7.899996,17.7 17.699996,17.7 h 8.3 c 9.7,0 17.7,-8 17.7,-17.7 v -119.5 z"
+       id="path15"
+       inkscape:connector-curvature="0"
+       style="fill:#87c214" /><path
+       class="st2"
+       d="m 137.99999,88.000006 v -22.5 c 0,-9.7 -8,-17.7 -17.7,-17.7 h -8.3 c -9.7,0 -17.699996,8 -17.699996,17.7 v 22.5 z"
+       id="path17"
+       inkscape:connector-curvature="0"
+       style="fill:#87c214" /><path
+       class="st2"
+       d="M 234.99999,185.00001 V 65.500006 c 0,-9.7 -7.9,-17.7 -17.7,-17.7 h -8.3 c -9.7,0 -17.7,8 -17.7,17.7 V 185.00001 Z"
+       id="path25"
+       inkscape:connector-curvature="0"
+       style="fill:#87c214" /><path
+       class="st2"
+       d="m 191.29999,242.70001 v 22.5 c 0,9.7 8,17.7 17.7,17.7 h 8.3 c 9.7,0 17.7,-8 17.7,-17.7 v -22.5 z"
+       id="path29"
+       inkscape:connector-curvature="0"
+       style="fill:#87c214" /><path
+       class="st4"
+       d="m 87.299994,192.00001 h -22.5 c -9.7,0 -17.7,7.9 -17.7,17.7 v 8.3 c 0,9.7 7.9,17.7 17.7,17.7 h 22.5 z"
+       id="path37"
+       inkscape:connector-curvature="0"
+       style="fill:#95d220" /><path
+       class="st4"
+       d="m 264.49999,192.00001 h -119.5 v 43.7 h 119.5 c 9.7,0 17.7,-8 17.7,-17.7 v -8.3 c -0.1,-9.7 -8,-17.7 -17.7,-17.7 z"
+       id="path41"
+       inkscape:connector-curvature="0"
+       style="fill:#95d220" /><path
+       class="st4"
+       d="M 184.29999,95.000006 H 64.799994 c -9.7,0 -17.7,7.900004 -17.7,17.700004 v 8.3 c 0,9.7 7.9,17.7 17.7,17.7 H 184.29999 Z"
+       id="path51"
+       inkscape:connector-curvature="0"
+       style="fill:#95d220" /><path
+       class="st4"
+       d="m 264.49999,95.000006 h -22.5 v 43.700004 h 22.5 c 9.7,0 17.7,-7.9 17.7,-17.7 v -8.3 c -0.1,-9.7 -8,-17.700004 -17.7,-17.700004 z"
+       id="path53"
+       inkscape:connector-curvature="0"
+       style="fill:#95d220" /></g></svg>
diff --git a/assets/logo_mac.png b/assets/logo_mac.png
new file mode 100644
index 0000000000000000000000000000000000000000..e17fb5361282e69af0213d700f21c5340f94615c
Binary files /dev/null and b/assets/logo_mac.png differ
diff --git a/assets/logo_mac.svg b/assets/logo_mac.svg
new file mode 100644
index 0000000000000000000000000000000000000000..c9bb69ad983f08d9ce72be87633a05957fa0675d
--- /dev/null
+++ b/assets/logo_mac.svg
@@ -0,0 +1,102 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Ebene_1"
+   x="0px"
+   y="0px"
+   viewBox="0 0 330.00001 330.00001"
+   xml:space="preserve"
+   inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"
+   sodipodi:docname="logo_mac.svg"
+   width="330"
+   height="330"><metadata
+     id="metadata61"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+     id="defs59" /><sodipodi:namedview
+     pagecolor="#000000"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1680"
+     inkscape:window-height="993"
+     id="namedview57"
+     showgrid="false"
+     inkscape:zoom="1.2101234"
+     inkscape:cx="-92.241096"
+     inkscape:cy="37.187288"
+     inkscape:window-x="0"
+     inkscape:window-y="0"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="Ebene_1" /><style
+     type="text/css"
+     id="style3">
+	.st0{fill:#FFFFFF;}
+	.st1{display:none;fill:#87C214;}
+	.st2{fill:#87C214;}
+	.st3{display:none;fill:#FFFFFF;}
+	.st4{fill:#95D220;}
+	.st5{display:none;fill:#95D220;}
+</style><g
+     id="g835"
+     transform="matrix(0.8,0,0,0.8,33,33)"
+     style="stroke-width:1.25"><circle
+       r="165"
+       class="st0"
+       cx="165"
+       cy="165"
+       id="circle7"
+       style="fill:#ffffff;stroke-width:1.25" /><g
+       id="g1059"
+       style="stroke-width:1.25"><path
+         style="fill:#87c214;stroke-width:1.25"
+         inkscape:connector-curvature="0"
+         id="path15"
+         d="m 94.299994,145.70001 v 119.5 c 0,9.7 7.899996,17.7 17.699996,17.7 h 8.3 c 9.7,0 17.7,-8 17.7,-17.7 v -119.5 z"
+         class="st2" /><path
+         style="fill:#87c214;stroke-width:1.25"
+         inkscape:connector-curvature="0"
+         id="path17"
+         d="m 137.99999,88.000006 v -22.5 c 0,-9.7 -8,-17.7 -17.7,-17.7 h -8.3 c -9.7,0 -17.699996,8 -17.699996,17.7 v 22.5 z"
+         class="st2" /><path
+         style="fill:#87c214;stroke-width:1.25"
+         inkscape:connector-curvature="0"
+         id="path25"
+         d="M 234.99999,185.00001 V 65.500006 c 0,-9.7 -7.9,-17.7 -17.7,-17.7 h -8.3 c -9.7,0 -17.7,8 -17.7,17.7 V 185.00001 Z"
+         class="st2" /><path
+         style="fill:#87c214;stroke-width:1.25"
+         inkscape:connector-curvature="0"
+         id="path29"
+         d="m 191.29999,242.70001 v 22.5 c 0,9.7 8,17.7 17.7,17.7 h 8.3 c 9.7,0 17.7,-8 17.7,-17.7 v -22.5 z"
+         class="st2" /><path
+         style="fill:#95d220;stroke-width:1.25"
+         inkscape:connector-curvature="0"
+         id="path37"
+         d="m 87.299994,192.00001 h -22.5 c -9.7,0 -17.7,7.9 -17.7,17.7 v 8.3 c 0,9.7 7.9,17.7 17.7,17.7 h 22.5 z"
+         class="st4" /><path
+         style="fill:#95d220;stroke-width:1.25"
+         inkscape:connector-curvature="0"
+         id="path41"
+         d="m 264.49999,192.00001 h -119.5 v 43.7 h 119.5 c 9.7,0 17.7,-8 17.7,-17.7 v -8.3 c -0.1,-9.7 -8,-17.7 -17.7,-17.7 z"
+         class="st4" /><path
+         style="fill:#95d220;stroke-width:1.25"
+         inkscape:connector-curvature="0"
+         id="path51"
+         d="M 184.29999,95.000006 H 64.799994 c -9.7,0 -17.7,7.900004 -17.7,17.700004 v 8.3 c 0,9.7 7.9,17.7 17.7,17.7 H 184.29999 Z"
+         class="st4" /><path
+         style="fill:#95d220;stroke-width:1.25"
+         inkscape:connector-curvature="0"
+         id="path53"
+         d="m 264.49999,95.000006 h -22.5 v 43.700004 h 22.5 c 9.7,0 17.7,-7.9 17.7,-17.7 v -8.3 c -0.1,-9.7 -8,-17.700004 -17.7,-17.700004 z"
+         class="st4" /></g></g></svg>
\ No newline at end of file
diff --git a/utils/create-mac-icon.sh b/utils/create-mac-icon.sh
new file mode 100755
index 0000000000000000000000000000000000000000..bacffd933a07fee774a3b5ef2ee997e0e20c6aba
--- /dev/null
+++ b/utils/create-mac-icon.sh
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+# A script for creating a macOS launcher icon
+
+set -e
+
+DIR=$(dirname $0)
+REPO="$DIR/.."
+INPUT="$REPO/assets/logo_mac.png"
+OUTPUT="$REPO/assets/briar.iconset"
+
+echo "Creating OUTPUT directory"
+mkdir -p "$OUTPUT"
+
+echo "Creating images"
+
+sips -z 16 16     $INPUT --out "${OUTPUT}/icon_16x16.png"
+sips -z 32 32     $INPUT --out "${OUTPUT}/icon_16x16@2x.png"
+sips -z 32 32     $INPUT --out "${OUTPUT}/icon_32x32.png"
+sips -z 64 64     $INPUT --out "${OUTPUT}/icon_32x32@2x.png"
+sips -z 128 128   $INPUT --out "${OUTPUT}/icon_128x128.png"
+sips -z 256 256   $INPUT --out "${OUTPUT}/icon_128x128@2x.png"
+sips -z 256 256   $INPUT --out "${OUTPUT}/icon_256x256.png"
+sips -z 512 512   $INPUT --out "${OUTPUT}/icon_256x256@2x.png"
+sips -z 512 512   $INPUT --out "${OUTPUT}/icon_512x512.png"
+sips -z 1024 1024 $INPUT --out "${OUTPUT}/icon_512x512@2.png"
+
+echo "Creating icns file"
+iconutil -c icns $OUTPUT
+
+rm -R $OUTPUT