Xfce Wiki

Sub domains
 

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
projects:gsoc:start [2024/01/25 18:21] – [thunar] alexxconsprojects:gsoc:start [2024/02/20 22:16] (current) – [Xfce - Google Summer of Code 2024] alexxcons
Line 1: Line 1:
 ~~NOTOC~~ ~~NOTOC~~
 +
 ====== Xfce - Google Summer of Code 2024 ====== ====== Xfce - Google Summer of Code 2024 ======
  
Line 8: Line 9:
   * **[[#Frequently Asked Questions|Frequently Asked Questions]]**   * **[[#Frequently Asked Questions|Frequently Asked Questions]]**
   * **[[#GSoC Participants Blogs|GSoC Participants Blogs]]**   * **[[#GSoC Participants Blogs|GSoC Participants Blogs]]**
 +
 +----
 +
 +<note important>Sadly Xfce was not accepted for GSoC 2024.</note>
  
 ---- ----
Line 30: Line 35:
  
 ---- ----
-[[|Back To Top]] 
- 
 ====== Project Ideas ====== ====== Project Ideas ======
  
Line 38: Line 41:
 Note: Fixing some smaller issues already now (E.g. to show your programming skills) as well would be very welcome. Note: Fixing some smaller issues already now (E.g. to show your programming skills) as well would be very welcome.
  
-Here are some suggestions to pick from, where mentors already confirmed to support them as part of a GSoC project. You can as well check our [[https://gitlab.xfce.org/|gitlab issue tracker]] for other thunar related issues, though please make sure that there is a mentor supporting your choice!+Here are some suggestions to pick from, where mentors already confirmed to support them as part of a GSoC project. You can as well check our [[https://gitlab.xfce.org/|gitlab issue tracker]] for other issues from the pojects listed below, though please make sure that there is a mentor supporting your choice!
  
-----+===== thunar =====
  
 +Thunar is Xfce's file manager and one of its core components. There are many new features pending to be implemented and bugs that need fixing, some of which are listed below. See [[https://wiki.xfce.org/thunar/dev/build_and_run|this wiki page]] for detailed instructions on how to build and run thunar.
  
-===== thunar =====+  * [[https://gitlab.xfce.org/xfce/thunar/-/issues/547|Offer Thunar specific file selection dialog via DBus Service "org.freedesktop.portal.FileChooser"]] 
 +    * **[Difficulty: challenging] [Required Skills: C, Gtk] [Possible Mentors: Alexander Schwinn]** 
 +    * **[Estimate time: 175h]** 
 +    * So that all applications which want to pick a file will see the thunar dialog, instead of the foreign GtkFileChooserDialog 
 +    * Possible required to implement a service ''xdg-desktop-portal-xfce'', according to [[https://github.com/flatpak/xdg-desktop-portal-gtk/|xdg-desktop-portal-gtk]] (to be checked) 
 +    * Creation of the related DBUS Service in thunar 
 +    * Dialog to pick specific file(s) and hit "done"/"abort" using the current thunar widgets.
  
-Thunar is Xfce's file manager and one of its core componentsThere are many new features pending to be implemented and bugs that need fixingsome of which are listed below:+  * [[https://gitlab.xfce.org/xfce/thunar/-/issues/693|New view "Pictures"]] 
 +    * **[Difficulty: challenging] [Required Skills: C, Gtk] [Possible Mentors: Alexander Schwinn]** 
 +    * **[Estimate time: 175h]** 
 +    * A new view in order to maximize the space taken by thumbnails, not showing the file names anymore 
 +    * Most likely would require to introduce a new base-view, similar to [[https://gitlab.xfce.org/xfce/exo/-/blob/master/exo/exo-icon-view.c|exo-icon-view]]. That view could be added directly into the thunar codebase. 
 +    * There is already an [[https://gitlab.xfce.org/xfce/thunar/-/merge_requests/303|open merge request from last GSoC]], which implements the feature partly using exo-icon-view as a base ... though as such has the limitations of exo-icon-view. Nevertheless, it can be used as inspiration, and to figure out where the relevant code is located.
  
-  * [[https://gitlab.xfce.org/xfce/thunar/-/issues/86|Confusing overwrite dialog when copying folder from case-sensitive to case-insensitive file-systems]] +  * [[https://gitlab.xfce.org/xfce/thunar/-/issues/179|Store each UCA in separate *.desktop files instead of using a single uca.xml]] 
-    * **[Difficulty: medium] [Required Skills: C, Gtk] [Possible Mentors: Alexander Schwinn]** +    * **[Difficulty: challenging] [Required Skills: C, Gtk] [Possible Mentors: Alexander Schwinn]** 
-    * **[Estimate time: 60h]** +    * **[Estimate time: 175h]** 
-    * Unlike UNIX systems, Windows and macOS systems do not allow files that differ only by case+    * Check how other file managers (dolphin?) handle custom actions / which formats are used. Possibly we can follow some standard
-    * Figure out how to check filesystem case-insensitivity ([[https://gitlab.xfce.org/xfce/thunar/-/commit/9f7aca2e7762d0343c743c16470a23c788868f58|Related commit]]) +    * That would allow distros to provide preinstalled uca's in a simple way. Related: [[https://gitlab.xfce.org/xfce/thunar/-/merge_requests/111|!111]] (Having *.desktop files would supersede that MR
-    * Implement a renaming scheme to fit case-sensitive names to case-insensitive filesystems. +    * Precondition to [[https://gitlab.xfce.org/xfce/thunar/-/issues/1028|#1028]] 
-    * Additional task: Warn user about case-insensitive systems +    Support for reading uca.xml should be kept (For at least one thunar version) to keep backward compatibility.
-      * **[Difficulty: medium] [Required SkillsC, Gtk]** +
-      * **[Estimated time: 20h]** +
-      * Open an Issue first to work with this problem. +
-      * Dialog like "Overwrite 'Gtk' with 'GTK'" would confuse users without knowledge about filesystems. +
-      * Check if the filesystem is case-insensitive and/or the overwriten file only differs by case. +
-      Figure out a way to inform the user about the problem without explaining too many technical details.+
  
   * [[https://gitlab.xfce.org/xfce/thunar/-/issues/500|Extend Thunarx API to be able to set emblems in thunar-plugins]]   * [[https://gitlab.xfce.org/xfce/thunar/-/issues/500|Extend Thunarx API to be able to set emblems in thunar-plugins]]
     * **[Difficulty: challenging] [Required Skills: C, Gtk] [Possible Mentors: Alexander Schwinn]**     * **[Difficulty: challenging] [Required Skills: C, Gtk] [Possible Mentors: Alexander Schwinn]**
-    * **[Estimate time: 80h]**+    * **[Estimate time: 90h]**
     * Several thunar plugins, like rabbit-vcs, the thunar-vcs-plugin and thunar-dropbox would profit from the possibility to set emblems on files. Though currently, plugins are not able to do so.     * Several thunar plugins, like rabbit-vcs, the thunar-vcs-plugin and thunar-dropbox would profit from the possibility to set emblems on files. Though currently, plugins are not able to do so.
     * Nautilus already seems to provide such a service. Most likely the nautilus code can be used as inspiration.     * Nautilus already seems to provide such a service. Most likely the nautilus code can be used as inspiration.
     * It would be required to extend the thunarx API (API used by thunar plugin) in order to support custom emblems.     * It would be required to extend the thunarx API (API used by thunar plugin) in order to support custom emblems.
  
-  * [[https://gitlab.xfce.org/xfce/thunar/-/issues/693|New view "Pictures"]] +  * [[https://gitlab.xfce.org/xfce/thunar/-/issues/1028|Use different key-values to index Toolbar buttons]] 
-    * **[Difficulty: challenging] [Required Skills: C, Gtk] [Possible Mentors: Alexander Schwinn]** +    * **[Difficulty: medium] [Required Skills: C, Gtk] [Possible Mentors: Alexander Schwinn]** 
-    * **[Estimate time: 100h]** +    * **[Estimate time: 50h]** (can be part of a 90/175/350h project) 
-    * A new view in order to maximize the space taken by thumbnailsnot showing the file names anymore +    * Currentlyonly the derivation from the default loading order is used to arrange toolbar buttons. This can lead to bugs 
-    * Most likely would require work on the [[https://gitlab.xfce.org/xfce/exo/-/blob/master/exo/exo-icon-view.c|exo-icon-view]]. +    * In the future, either the name+subfolder of each toolbar-button (and UCA) should be used for indexing (or the path to some *.desktop file after [[https://gitlab.xfce.org/xfce/thunar/-/issues/179|#179]])
-    * There is already an [[https://gitlab.xfce.org/xfce/thunar/-/merge_requests/303|open merge request from last GSoC]], which can be rebased. (Not the full feature, though a good starting point)+
  
-  * [[https://gitlab.xfce.org/xfce/thunar/-/issues/547|Offer Thunar specific file selection dialog via DBus Service "org.freedesktop.portal.FileChooser"]] + 
-    * **[Difficulty: challenging] [Required Skills: C, Gtk] [Possible Mentors: Alexander Schwinn]** +  * [[https://gitlab.xfce.org/xfce/thunar/-/issues/499|Thunar Plugin for Nextcloud Integration]] 
-    * **[Estimate time: 175h]** +    * **[Difficulty: medium] [Required Skills: C, Gtk] [Possible Mentors: Alexander Schwinn]** 
-    * So that all applications which want to pick a file will see the thunar dialoginstead of the foreign GtkFileChooserDialog +    * **[Estimate time: 90h]** (can be part of a 90/175/350h project) 
-    * Possible required to implement a service ''xdg-desktop-portal-xfce'', according to [[https://github.com/flatpak/xdg-desktop-portal-gtk/|xdg-desktop-portal-gtk]] (to be checked) +    * Implementation as Thunar Pluginbased on existing work (see issue) 
-    * Creation of the related DBUS Service in thunar +    * Dialog to enter credentials 
-    * Dialog to pick specific file(s) and hit "done"/"abort" using the current thunar widgets.+    * Right click menu actions for management  
 +    * Possibly emblems to show sync-status if required
  
 ===== all components ===== ===== all components =====
Line 87: Line 96:
   * Integration of Xfce Keyboard Shortcuts Widget into all Xfce Applications   * Integration of Xfce Keyboard Shortcuts Widget into all Xfce Applications
     * **[Difficulty: medium] [Required Skills: C, Gtk] [Possible Mentors: Alexander Schwinn]**     * **[Difficulty: medium] [Required Skills: C, Gtk] [Possible Mentors: Alexander Schwinn]**
-    * **[Estimate time: 10-90h (Depends on the number of ported apps)]**+    * **[Estimate time: 10-90h (Depends on the number of ported apps)]** (can be part of a 90/175/350h project)
     * Currently only available for thunar, xfce4-terminal and mousepad(via plugin)     * Currently only available for thunar, xfce4-terminal and mousepad(via plugin)
     * To be integrated as well into all other xfce applications which use keyboard shortcuts (TODO: Provide a list)     * To be integrated as well into all other xfce applications which use keyboard shortcuts (TODO: Provide a list)
     * See [[https://gitlab.xfce.org/apps/mousepad/-/merge_requests/121|mousepad merge request]] and [[https://gitlab.xfce.org/apps/xfce4-terminal/-/merge_requests/32|xfce4-terminal merge request]] for reference     * See [[https://gitlab.xfce.org/apps/mousepad/-/merge_requests/121|mousepad merge request]] and [[https://gitlab.xfce.org/apps/xfce4-terminal/-/merge_requests/32|xfce4-terminal merge request]] for reference
----- 
-[[|Back To Top]] 
  
 +----
 ===== Frequently Asked Questions ===== ===== Frequently Asked Questions =====
  
Line 99: Line 107:
 We do not force any specific format. Here is what you have to look for: We do not force any specific format. Here is what you have to look for:
   * Make sure you follow the [[https://google.github.io/gsocguides/student/writing-a-proposal|official basics]]   * Make sure you follow the [[https://google.github.io/gsocguides/student/writing-a-proposal|official basics]]
-  * It can be beneficial to define an alternative target (In case some other participant as well picked your preferred target) +  * Draft some timeline to show in detail when you will have time to work on which exact part of your project. 
-  * Make sure to define some stretch targets, in case you finish early+  * In case multiple participants will be picked, it can be beneficial to define an alternative targets to prevent overlap. 
 +  * Make sure to define some stretch targets, in case you finish your main target early
  
 === Where can I start ? === === Where can I start ? ===
Line 108: Line 117:
  
 ---- ----
- 
-[[|Back To Top]] 
- 
 ==== GSoC Participants Blogs ==== ==== GSoC Participants Blogs ====
  
   * to be added   * to be added
  
 +----
 ==== Previous Years ==== ==== Previous Years ====
  
Line 121: Line 128:
  
 ---- ----
 +
 [[|Back to Top]] [[|Back to Top]]