GSoC/2019/StatusReports/WeixuanXiao: Difference between revisions

From KDE Community Wiki
< GSoC‎ | 2019‎ | StatusReports
No edit summary
Line 12: Line 12:


=== [Done] Before May 6 ===
=== [Done] Before May 6 ===
* Keep investigating the causes of failure of interface boot and try to fix it
* Keep investigating the causes of failure of interface boot and try to fix it  
* Finish a HOW-TO wiki for building current version of KDE Connect on macOS
* Finish a HOW-TO wiki for building current version of KDE Connect on macOS


=== [Done] May 6 – May 26 (Before the official coding time) ===
=== [Done] May 6 – May 26 ===
* Keep track of development discussion on IRC, mailing list and telegram group to get deeper knowledge of KDE Connect and KDE Community
* Keep track of development discussion on IRC, mailing list and telegram group to get deeper knowledge of KDE Connect and KDE Community
* Fix nightly build of macOS building on KDE Connect Jenkins
* Fix nightly build of macOS building on KDE Connect Jenkins
* Try to fix the failure of interface boot
* Try to fix the failure of interface boot


=== [Done] May 27 – June 16 (Official coding period starts, 3 weeks) ===
=== [Done] May 27 – June 16 ===
* Add vlc library blueprint of macOS version into Craft bin(I’ve still finished it, maybe for further using and for other project in KDE) ✅
* Add vlc library blueprint of macOS version into Craft bin
* Fix the failure of interface boot by packaging it to a dmg(1 week, May 27 - June 2) ✅
* Fix the failure of interface boot by packaging it to a DMG file
* May 28 - June 1 Use dbus in Craft rather than installing dbus with Homebrew
* Use dbus in Craft rather than installing dbus with Homebrew
* Fix scripts of “package” option in Craft to build a dmg image (1 week and a half) ✅
* Fix scripts of “package” option in Craft to build a dmg image
* Package kdeconnect-indicator, kdeconnectd, kdeconnect-cli to DMG package (3 days) ✅
* Package kdeconnect-indicator, kdeconnectd, kdeconnect-cli to DMG package
* June 1 - June 2 Fix dependencies of kdeconnect-indicator, kdeconnectd, kdeconnect-cli in DMG package
* Fix dependencies of kdeconnect-indicator, kdeconnectd, kdeconnect-cli in DMG package
* June 3 - June 9 Dbus integration (make a wrapper and make kdeconnect boot the dbus) ✅
* ✅ DBus integration
* June 10 - June 17 Private DBus
* Private DBus Support


=== [Done] June 17  – June 28 ===
=== [Done] June 17  – June 28 ===
* Inhibit screensaver implemented by macOS native command (3 days) ✅
* Inhibit screensaver implemented by macOS native command
* Implement system volume plugin by coding a native plugin on macOS (4 days) ✅
* Implement system volume plugin for macOS


=== [Done] June 24 MID TERM EVALUATION ===  
=== [Done] June 24 MID TERM EVALUATION ===  
Line 40: Line 40:
----
----


=== [Done] June 24 – July 21 (4 weeks) ===
=== [Done] June 24 – July 21 ===
* June 28 - July 7 Implement native notifications on macOS (1 week and a half) ✅
* Implement native notifications on macOS
* [Delayed] July 8  - July 14 Make the sftp plugin work by adding a stfp browser(1 week)
* Make the sftp plugin work by adding a stfp browser
* July 15  - July 17 Integrate KDE Connect with macOS finder extension, which allows users to send files directly from Finder
* Integrate KDE Connect with macOS finder extension, which allows users to send files directly from Finder, this is implemented by a native assistant application, user can install it as they wish
* July 18  - July 21 Make a clipboard plugin work on macOS
* Make clipboard plugin work on macOS
* The documentation should be written during the coding ✅


=== [Done] July 22 MID TERM EVALUATION ===  
=== [Done] July 22 MID TERM EVALUATION ===  
Line 51: Line 50:
----
----


=== [Done] July 22 – August 11 (2 weeks) ===  
=== [Done] July 22 – August 18 ===  
* Implement virtual input plugin by fixing X11 or by coding another backend for macOS (4 days) ✅
* Implement virtual input plugin by coding another backend for macOS
* Debug and fix share and receive plugin on both Android and macOS sides (2 days) ✅
* Debug and fix share and receive plugin on both Android and macOS sides
* Make the sftp plugin work by adding a stfp browser
* Make the sftp plugin work by adding an integrated stfp browser
* 2 days for unit test of new added, macOS-specific codes ✅
 
=== August 12 – August 18 (1 week) ===
* Finish all documentation and clear up
* Release a production-ready install package of dmg format(CodeSign)
* Release a production-ready install package of dmg format(CodeSign)



Revision as of 18:53, 22 August 2019

KDE Connect for macOS port

KDE Connect works well on Linux and is built with KDE Frameworks and Qt. There is already “Continuity” on macOS for iPhone and iPad running iOS. But there is no support, and there will never be official support for Android phone on macOS. It makes sense to use KDE Connect on macOS to give Android users a better experience.

The work has two main parts:

  • Packaging KDE Connect on macOS
  • Making plugins work on macOS

Progress

[Done] Before May 6

  • ✅ Keep investigating the causes of failure of interface boot and try to fix it
  • ✅ Finish a HOW-TO wiki for building current version of KDE Connect on macOS

[Done] May 6 – May 26

  • ✅ Keep track of development discussion on IRC, mailing list and telegram group to get deeper knowledge of KDE Connect and KDE Community
  • ✅ Fix nightly build of macOS building on KDE Connect Jenkins
  • ✅ Try to fix the failure of interface boot

[Done] May 27 – June 16

  • ✅ Add vlc library blueprint of macOS version into Craft bin
  • ✅ Fix the failure of interface boot by packaging it to a DMG file
  • ✅ Use dbus in Craft rather than installing dbus with Homebrew
  • ✅ Fix scripts of “package” option in Craft to build a dmg image
  • ✅ Package kdeconnect-indicator, kdeconnectd, kdeconnect-cli to DMG package
  • ✅ Fix dependencies of kdeconnect-indicator, kdeconnectd, kdeconnect-cli in DMG package
  • ✅ DBus integration
  • ✅ Private DBus Support

[Done] June 17 – June 28

  • ✅ Inhibit screensaver implemented by macOS native command
  • ✅ Implement system volume plugin for macOS

[Done] June 24 MID TERM EVALUATION

Up to first evaluation, KDE Connect could be started without explicit configuration. User could use it as a normal application.


[Done] June 24 – July 21

  • ✅ Implement native notifications on macOS
  • ✅ Make the sftp plugin work by adding a stfp browser
  • ✅ Integrate KDE Connect with macOS finder extension, which allows users to send files directly from Finder, this is implemented by a native assistant application, user can install it as they wish
  • ✅ Make clipboard plugin work on macOS

[Done] July 22 MID TERM EVALUATION


[Done] July 22 – August 18

  • ✅ Implement virtual input plugin by coding another backend for macOS
  • ✅ Debug and fix share and receive plugin on both Android and macOS sides
  • ✅ Make the sftp plugin work by adding an integrated stfp browser
  • Release a production-ready install package of dmg format(CodeSign)

Conclusion​

  • [Done] Milestone 1 (Bootstrap) and Milestone 2 (Basic package) will be done before evaluation 1, to make the application run normally without tedious configuration like now.
  • [Done] Milestone 3 (Native system Functionalities) will be done for evaluation 2. Meanwhile, Milestone 4 (Plugin Functionalities) should be started on mid-July, before the evaluation 2.
  • [WIP] Milestone 4 (Plugin Functionalities) and Milestone 5 (Complete package) will be done for final evaluation. And it will be a full deliverable version which is product-ready.

Work In Progress

  • Implement native notifications on macOS working on writing tests
  • Finish all documentation and clear up
  • Release a production-ready install package of dmg format

Accepted changes

KDE Connect:


Craft Blueprints:

Craft:

Posts and Resources

Useful links:


Posts: