Session Desktop - Onion routing based messenger
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Go to file
William Grant 9dce5c1fd9 fix: repair global styling after styled upgrade improved match system setting
set each value on root instead of declaring one global css string. Use setThemeValues in all cases
11 months ago
.github
.husky
_locales fix: use localised strings for qr password toggle button 11 months ago
actions/setup_and_build fix: fix macos CI by forcing use of python 3.11 1 year ago
build fix: tsc does not overwrite workers compiled content 1 year ago
config
fonts
images fix: make qr code update correctly if theme changes 11 months ago
js
mmdb fix: update maxmind db 1 year ago
mnemonic_languages
patches chore: remove dtrace-provider dep from bunyan using our own 1 year ago
protos chore: remove lastChangetimestmap and add explciit expiretype and type 1 year ago
sound
stylesheets fix: improve qr code icon 11 months ago
tools
ts fix: repair global styling after styled upgrade improved match system setting 11 months ago
.editorconfig
.eslintignore
.eslintrc.js feat: restrict importing useMount from react-use directly 11 months ago
.gitattributes
.gitignore fix: clear swarms from snodes not in pool on full fetch 12 months ago
.lintstagedrc.js
.mocharc.json feat: added mocharc.json 11 months ago
.nvmrc
.prettierignore
.prettierrc.js
.sassrc.json
.yarnclean
CODE_OF_CONDUCT.md
CONTRIBUTING.md Add fedora and alternative linux install instructions to CONTRIBUTING.md 1 year ago
INTERNALBUILDS.md
LICENSE
README.md chore: include maxmind attribution in readme 1 year ago
RELEASING.md
THEMES.md
about.html
about_preload.js fix: use createRoot instead of ReactDom.render 1 year ago
background.html feat: refactored empty message view component 1 year ago
commitlint.config.js
debug_log.html
debug_log_preload.js fix: use createRoot instead of ReactDom.render 1 year ago
libsession.worker.config.js fix: tsc does not overwrite workers compiled content 1 year ago
package.json feat: updated styled components and typings 11 months ago
password.html feat: refactored empty message view component 1 year ago
password_preload.js fix: use createRoot instead of ReactDom.render 1 year ago
preload.js fix: revert always on dump logging 11 months ago
sass.config.js
tsconfig.json refactor: remove unnecessary react imports 1 year ago
utils.worker.config.js fix: tsc does not overwrite workers compiled content 1 year ago
yarn.lock feat: updated styled components and typings 11 months ago

README.md

Session Desktop

Download at getsession.org

Summary

Session integrates directly with Oxen Service Nodes, which are a set of distributed, decentralized and Sybil resistant nodes. Service Nodes act as servers which store messages offline, and a set of nodes which allow for onion routing functionality obfuscating users IP Addresses. For a full understanding of how Session works, read the Session Whitepaper.

DesktopSession

Want to Contribute? Found a Bug or Have a feature request?

Please search for any existing issues that describe your bug in order to avoid duplicate submissions.

Submissions can be made by making a pull request to our development branch.If you don't know where to start contributing please read Contributing.md and refer to issues tagged with the Good-first-issue tag.

Supported platforms

Session requires Windows 10 or later, macOS Catalina (10.15) or later, or a linux distribution with glibc 2.28 or later like Debian 10 or Ubuntu 20.04.

Build instruction

Build instructions can be found in Contributing.md.

Verifying signatures

Get Kee's key and import it:

wget https://raw.githubusercontent.com/oxen-io/oxen-core/dev/utils/gpg_keys/KeeJef.asc
gpg --import KeeJef.asc

Get the signed hash for this release, the SESSION_VERSION needs to be updated for the release you want to verify

export SESSION_VERSION=1.6.1
wget https://github.com/oxen-io/session-desktop/releases/download/v$SESSION_VERSION/signatures.asc

Verify the signature of the hashes of the files

gpg --verify signatures.asc 2>&1 |grep "Good signature from"

The command above should print "Good signature from "Kee Jefferys..." If it does, the hashes are valid but we still have to make the sure the signed hashes matches the downloaded files.

Make sure the two commands below returns the same hash. If they do, files are valid

sha256sum session-desktop-linux-amd64-$SESSION_VERSION.deb
grep .deb signatures.asc

Debian repository

Please visit https://deb.oxen.io/

License

Copyright 2011 Whisper Systems
Copyright 2013-2017 Open Whisper Systems
Copyright 2019-2023 The Oxen Project
Licensed under the GPLv3: https://www.gnu.org/licenses/gpl-3.0.html

Attributions

The IP-to-country mapping data used in this project is provided by MaxMind GeoLite2.