|
2 | 2 |
|
3 | 3 |  |
4 | 4 |  |
5 | | - |
6 | | - |
7 | | -[](https://travis-ci.org/IsmaelMartinez/teams-for-linux) |
8 | | -[](https://david-dm.org/IsmaelMartinez/teams-for-linux) |
| 5 | +[](https://travis-ci.org/IsmaelMartinez/teams-for-linux) |
| 6 | +[](https://david-dm.org/IsmaelMartinez/teams-for-linux) |
9 | 7 | [](https://david-dm.org/IsmaelMartinez/teams-for-linux?type=dev) |
10 | 8 |
|
11 | 9 | Unofficial Microsoft Teams client for Linux using [Electron](https://electronjs.org/). |
12 | 10 | It uses the Web App and wraps it as a standalone application using Electron. |
13 | 11 |
|
14 | | -## Install |
15 | | - |
16 | | -You can download the tarball, rpm or deb from the [releases page](https://github.com/IsmaelMartinez/teams-for-linux/releases). |
17 | | - |
18 | | -## Run from source |
19 | | - |
20 | | -```bash |
21 | | -yarn start |
22 | | -``` |
23 | | - |
24 | | -## Build for linux |
25 | | - |
26 | | -```bash |
27 | | -yarn run dist:linux |
28 | | -``` |
29 | | - |
30 | | -This will build an deb, rpm, snap, AppImage and tar.gz files in the dist folder. This files can be run in most popular linux distributions. |
31 | | - |
32 | | -Is possible to specify the snap or AppImage build type using running this: |
33 | | - |
34 | | -```bash |
35 | | -# Standalone build |
36 | | -yarn run dist:linux:snap |
37 | | - |
38 | | -# Or, if you have docker installed, you can alternatively build there |
39 | | -./dockerBuildSnap.sh |
40 | | -``` |
41 | | - |
42 | | -This will build the snap into the `dist/` directory. |
43 | | - |
44 | | -### Install using locally built snap file |
45 | | - |
46 | | -To install the snap file using the generated file use this command. |
47 | | - |
48 | | -```bash |
49 | | -cd dist |
50 | | -sudo snap install teams-for-linux_VERSION_amd64.snap --dangerous |
51 | | -``` |
52 | | - |
53 | | -### Install using snap from store |
54 | | - |
55 | | - |
56 | | -```bash |
57 | | -sudo snap install teams-for-linux |
58 | | -``` |
59 | | - |
60 | | -#### Use camera using the Snap build |
61 | | - |
62 | | -Snap uses confinement to provide more security, this restric the access to hardware or data on your device to prevent security issues. |
63 | | - |
64 | | -The camera is a restricted device on Snap, so you need to allow the access to the camera on Teams For Linux to be able to do videocalls, to do that run this command after the installation of the snap to create an interface to the camera: |
65 | | - |
66 | | -```bash |
67 | | -sudo snap connect teams-for-linux:camera core:camera |
68 | | -``` |
69 | | - |
70 | 12 | ## Available starting arguments |
71 | 13 |
|
72 | 14 | Check in the config [README.md](app/config/README.md) in the config folder. |
73 | 15 |
|
74 | | -## Development |
75 | | - |
76 | | -This is a fairly small project. IMO, the ideal size for getting started with electron. |
| 16 | +## Contributing |
77 | 17 |
|
78 | | -Just fork the repo and dive in. The app/index.js is the starting of all the application. |
79 | | - |
80 | | -Once changes are made, just do a pull request to master. |
81 | | - |
82 | | -Each subfolder has a README.md file that explains the reason of existence and any extra required information. |
83 | | - |
84 | | -### Version number |
85 | | - |
86 | | -We are following SemVer at the moment. The lower number in master will be increased after a release (basically, to avoid re-releasing stuff with some changes), but release number will be decided just before a release trying to use SemVer standards. |
| 18 | +Please refer to the [CONTRIBUTING.md](CONTRIBUTING.md) file for more information about how to run this application from source, and/or how to contribute. |
87 | 19 |
|
88 | 20 | ## History |
89 | 21 |
|
90 | | -This branch is a child fork of [JamieMagee teams-for-linux](https://github.com/JamieMagee/teams-for-linux) repo, that is itself a fork of [Ivelkov teams-for-linux](https://github.com/ivelkov/teams-for-linux). |
91 | | - |
92 | | -Jamie did express his desire to refactor this project in Typescript and to support it, but he has archive the project and I suspect that means he doesn't have the time to support it. |
93 | | - |
94 | | -I have tried to contact Ivelkov for a few months but haven't receive any answers. |
95 | | - |
96 | | -For that reason, decided to refork it and fix a few things that where not working. The list has grown since then to support many features and to fix most of the bugs. |
97 | | - |
98 | | -Ideally this project will die when Microsoft implements a desktop client for linux. Please do vote for it in the [Microsoft Suggestions Forum](https://microsoftteams.uservoice.com/forums/555103-public/suggestions/16911565-linux-client) |
99 | | - |
100 | | -Currently, the project is in a stable condition, and should continue as long as needed. Non stable versions are released as pre-release. |
| 22 | +Read about the history about this project in the [HISTORY.md](HISTORY.md) file. |
101 | 23 |
|
102 | 24 | ## Known issues |
103 | 25 |
|
104 | | -### Oauth services |
105 | | - |
106 | | -Some services requires the app to open the windows in electron. An example is github that requires authentication using oauth. |
107 | | - |
108 | | -We are defaulting in opening the links in a external browser, but links can be open ina electron windows by using the 'Crl+Click' combination. |
109 | | - |
110 | | -### No history |
111 | | - |
112 | | -Switching the userAgent with the persistence turn on sometimes have the side effect of "loosing" the channels history. Removing the data under `~/.config/teams-for-linux` or, if using snap `rm -rf /home/$HOME/snap/teams*`, should fix the issue. |
113 | | - |
114 | | -### Spellchecker not working |
115 | | - |
116 | | -Details are in issue [#28](https://github.com/IsmaelMartinez/teams-for-linux/issues/28) |
117 | | - |
118 | | -In short, node_spellchecker only ships with en_US dictionary. |
119 | | - |
120 | | -As a work around, only valid when running from source, you can enable the use of local dictionaries by following the next steps: |
121 | | - |
122 | | -1. Install hunspell and your locale dictionary as indicates in this link [https://github.com/atom/spell-check#debian-ubuntu-and-mint](https://github.com/atom/spell-check#debian-ubuntu-and-mint) |
123 | | -2. Run the following commands from the root of the app (where this README.md file is located) |
124 | | - 1.`mv node_modules/spellchecker/vendor/hunspell_dictionaries node_modules/spellchecker/vendor/hunspell_dictionaries.old` mv the en_US dictionaries to another location. |
125 | | - 2.`ln -s /usr/share/hunspell/ node_modules/spellchecker/vendor/hunspell_dictionaries` create a simbolic link to the hunspell dictionaries. Note, I am using the default location for hunspell. |
126 | | - |
127 | | -Starting the app with `yarn start`, and if you have your system configured with the right dictionaries and locale, you should be able to see the spellchecker working. |
128 | | - |
129 | | -Unfortunately, at this moment in time it is not possible to use local dictionaries with the packaged app. Fixing issue [51](https://github.com/atom/node-spellchecker/issues/51) in node-spellchecker should solve this issue. |
130 | | - |
131 | | -### No desktop notifications |
132 | | - |
133 | | -Some notifications daemons in linux don't support the implementation that Microsoft implemented in the browser. |
134 | | - |
135 | | -This project includes a desktop notification hack that can be enable by running the application with `teams-for-linux --enableDesktopNotificationsHack`. |
| 26 | +Known issues and workarounds can be found in the [KNOWN_ISSUES.md](KNOWN_ISSUES.md) file. |
136 | 27 |
|
137 | 28 | ## License |
138 | 29 |
|
|
0 commit comments