Git Product home page Git Product logo

whatsapp-desktop's Introduction

WhatsApp Desktop Build Status

This is a fork of the WhatsApp desktop client by Enrico204, based on the official WhatsApp web app. Build with Electron.

This fork makes the client work again with the current iteration of the WhatsApp web app.

No prebuilt binaries are released here, due to Facebook DCMA. Feel free to clone and build the source code.

This client is made obsolete on Windows and macOS by the official desktop client. This is only relevant for Linux users.

This is NOT an official product. This project does not attempt to reverse engineer the WhatsApp API or attempt to reimplement any part of the WhatsApp client. Any communication between the user and WhatsApp servers is handled by official WhatsApp Web itself; this is just a native wrapper for WhatsApp Web, like a browser.

Thanks to packagecloud for providing us a repository at https://packagecloud.io/Enrico204/Whatsapp-Desktop packagecloud.io

Original version of WhatsApp Desktop was written by @bcalik there: https://github.com/bcalik/Whatsapp-Desktop

Features

  • Cross platform (OSX, Windows x64, Linux x64 and ARM v7l)
  • Native notifications
  • System tray icon
  • Open links in browser
  • Badge with the number of notifications in the dock/taskbar
  • Dock icon bounces when a new message is received
  • Focus on contact search input via CMD+F (WIN+F)
  • Phone info window (s/w versions, battery status, etc)
  • Auto-launch on login
  • Start minimized to tray icon
  • Logging system (log to console and userData/log.log)
  • Apply custom CSS stylesheet
  • Auto-hide menu bar (Windows, Linux)
  • Disabling GPU rendering (useful when dealing with bugged video drivers)
  • A couple of things can be configured:
    • Toggle avatar visibility
    • Toggle preview of the messages visibility
    • Set the size for the media thumbs
    • Proxy settings connect to WhatsApp web

Repositories

Packagecloud provides us a repository at: https://packagecloud.io/Enrico204/Whatsapp-Desktop

Note that these repos are available only for amd64 (deb+rpm) and armhf/armv7l (deb-only).

apt-based (like Debian, Ubuntu, Mint, ...)

You can use that by adding this to /etc/apt/sources.list:

deb https://packagecloud.io/Enrico204/Whatsapp-Desktop/debian/ stretch main

and then by issuing:

apt-get install -y apt-transport-https curl gnupg
curl -L https://packagecloud.io/Enrico204/Whatsapp-Desktop/gpgkey | sudo apt-key add -
apt-get update
apt-get install whatsapp-desktop

rpm-based (like Red-hat, Fedora, ...)

First install required software:

yum install pygpgme yum-utils

Then create a file at /etc/yum.repos.d/Enrico204_Whatsapp-Desktop.repo with this content:

[Enrico204_Whatsapp-Desktop]
name=Enrico204_Whatsapp-Desktop
baseurl=https://packagecloud.io/Enrico204/Whatsapp-Desktop/el/6/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/Enrico204/Whatsapp-Desktop/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

Finally, update the local cache by issuing:

sudo yum -q makecache -y --disablerepo='*' --enablerepo='Enrico204_Whatsapp-Desktop'

Now you can install the package by issuing sudo yum install WhatsApp

ArchLinux

You'll need to enable AUR repositories, when you'll find this app with the name whatsapp-desktop.

More information here: https://aur.archlinux.org/packages/whatsapp-desktop/

A big thank you to @bil-elmoussaoui for maintaining ArchLinux package!

Pre-built packages

DEB and RPM packages for amd64 and armv7l (armhf) are also hosted in latest release page

For all other platforms: you can download ZIP files from latest release page.

Screenshots

screenshot

Command line switches

--debug-log         Switch file's log level to "debug" (default: "warn")

Known issues

Fonts rendering as rectangles after upgrade

Apparently it's caused by an issue of Electron with an older version of Pango. Upgrade Pango at least to 1.40.12 or downgrade to 1.40.5 should fix this. See https://github.com/Enrico204/Whatsapp-Desktop/issues/13

Tray Icon is displayed wrong in KDE

This is due to some bugs between Electron and KDE on tray icons, see this comment on issue #27 and vector-im/riot-web#3133. A workaround is to uninstall libappindicator and libappindicator-gtk3 packages (this will change also the behavior of click on the tray icon).

Contributions

Contributions are welcome! For feature requests and bug reports please submit an issue.

Build from source

To build from the source, run the following commands:

yarn install
yarn run build:platform

where build:platform can be build:linux if you want to build for Linux (use build:linux32 for 32-bit), build:osx for OSX only, build:win for Windows only, or simply build to build for all platforms.

You'll find artifacts into dist/ directory.

Run on-the-fly (for devs)

If you're a developer, you may want to use directly yarn run dev (in project root) instead of compiling the code each time. Please note that autostart feature will not work in this mode.

Cross-build for Windows (from Linux/macOS)

Wine needs to be installed. On macOS, it is installable via Homebrew:

brew install wine

On GNU/Linux you can install wine from your distro package manager.

Please mind that wine requires an Xorg display, so you should set correctly your DISPLAY env var (you can use Xvfb if you don't have/want a real Xorg display running)

whatsapp-desktop's People

Contributors

afro1114 avatar ann0nip avatar bcalik avatar bpartridge avatar championswimmer avatar dependabot-support avatar dssdiego avatar enrico204 avatar imsys avatar manjuransari avatar marco-calautti avatar mariovillani avatar mathsalmi avatar mlopezcoria avatar neyaoz avatar nyancrimew avatar tulliana avatar wotomg avatar zpon avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.