Dopamine is an audio player which tries to make organizing and listening to music as simple and pretty as possible. This version is written using Electron, Angular and Typescript. The original Dopamine (for Windows), which is written in WPF and C#, remains available here.
Dopamine icons created by Sharlee.
About this repository
IMPORTANT: the code in this repository is the base for Dopamine 3. It is still work in progress and building it, does NOT provide you with a functional audio player. If you want a functional audio player, try Dopamine 2 instead. The source code of Dopamine 2 can be found here.
Build prerequisites for GNU/Linux
- rpm: required to build rpm package
- libarchive-tools: contains bsdtar, which is required to build pacman package.
To install the prerequisites on Ubuntu:
sudo apt install wine rpm libarchive-tools
Build prerequisites for Windows
Open a PowerShell prompt as Administrator and run this command to instal the Windows build tools:
npm install --global --production windows-build-tools --vs2015
Due to the native dependency better-sqlite3, this project cannot be built for all platforms on GNU/Linux. The GNU/Linux packages must be built on GNU/Linux. The Windows package must be built on Windows. For mac, you're on your own. I have no means to test it out.
$ git clone https://github.com/digimezzo/dopamine.git $ cd dopamine $ npm install # Install dependencies $ npm run rebuild-sqlite # Rebuild better-sqlite3 for the version of node.js which is used by Electron $ npm start # Start Dopamine $ npm run electron:windows # Build for Windows $ npm run electron:linux # Build for Linux $ npm run electron:mac # Build for Mac
Pacman installation notes
The pacman package contains a dependency to package libappindicator-sharp, which is no longer distributed with Arch Linux. I cannot remove this dependency for now, because it is an issue in electron-builder (the packaging tool which is used in this project). It is, however, possible to install Knowte on Arch Linux or Manjaro using this command (replace x.y.z with the correct version number):
$ sudo pacman -U Knowte-x.y.z.pacman --assume-installed libappindicator-sharp