Google Summer of Code 2021: Difference between revisions

From ALT Linux Wiki
(initial gsoc2021 ideas)
 
(first number of ideas)
Line 16: Line 16:
* infrastructure stack - libnss-role/gpupdate/admc.
* infrastructure stack - libnss-role/gpupdate/admc.


== Development stack ideas ==
== Distribution stack ideas ==


=== Building bash-completion for system tools ===
=== Name Service Switch subsystem control with bash-completion ===
 
Name Service Switch (NSS) subsystem provides a variety of sources for common configuration databases and name resolution mechanisms. Current time every distribution have own instruments to control NSS configuration placed in /etc/nsswitch.conf. ALT distributions and other Sisyphus based solutions use special module [http://git.altlinux.org/gears/c/control.git control] to set and restore during system upgrade various system parameters and file modes. Shortly Control is ALT-specific set of scripts to control installed system facilities (like local system policy rules) - "control-policy rules".


Shell completion is a useful function which using everyday not only by developer, but users too. Typing begin part of command or it's argument and pressing [tab] will return a list of probable variant in various contexts (program names, name of files or directories, program arguments and other dynamically determinable options). So each command may different type of options to be taught to autocompleted.
Shell completion is a useful function which using everyday not only by developer, but users too. Typing begin part of command or it's argument and pressing [tab] will return a list of probable variant in various contexts (program names, name of files or directories, program arguments and other dynamically determinable options). So each command may different type of options to be taught to autocompleted.


The aim of this proposal...
The student should write two special improvements:
* control-policy rules to control NSS subsystem for all supported configuration databases;
* common bash-completion rules for all control-policies rules.
 
The challenge is in doing this in a clean Unix-way style, integrated with other control-policy rules.  
 
* Difficulty: Medium
* Language(s): Bash
* Possible Mentors: Evgeny Sinelnikov
 
=== Alterator DBus command line interface ===


== Distribution stack ideas ==
Each modern Linux distributions with UI-interface use special system IPC, called DBus, and authorized for each method by special system service, called PolicyKit. Originally Alterator, as core part of distribution stack, designed with own system interface based on unix-sockets and called woo bus, used as qt-based system control center, graphical instalator anf web-interface. But alterator modules, a this implementation, has no own introspectable interface. Current time we develops alterator-dbus module, which present each method from woo bus to DBus as controlled proxy authorized by policy kit.


=== Alterator DBus service interfaces ===
The aim of this proposal is twofold:
* there is no dbus introspection for alterator module at the moment;
* every module have common (REST API like) woo bus interface, but it also have a special own logic.


Each system UI-interface in modern Linux distributions used special system IPC, called DBus, and authorized for each method by special system service, called PolicyKit. Originally Alterator, as core part of distribution stack, designed with own system interface based on unix-sockets and called woo bus. So, each alterator module have own not introspectable interface. Current time we develops alterator-dbus module, which present each method from woo bus to DBus as controlled proxy by policy kit proxy.
The student should write command line interface for alterator modules via DBus and basic alterator modules introspection.  


The aim of this proposal...
* Difficulty: Hard
* Language(s): C, Bash, Scheme (guile)
* Possible Mentors: Ivan Melnikov


== Infrastructure stack ideas ==
== Infrastructure stack ideas ==
Line 36: Line 52:
=== FSMO management in Active Directory Control Center ===
=== FSMO management in Active Directory Control Center ===


The aim of this proposal...
Flexible Single Master Operations (FSMO) is a feature of Microsoft's Active Directory (AD). The tasks which are not suited to multi-master replication and are viable only with a single-master database are the FSMOs. Active Directory Control Center ([https://github.com/altlinux/admc admc]) is alternative (potentially cross-platform) implementation of Remote Server Administration Tools (RSAT) for control AD.
 
At the moment modern implementation of RSAT (from newest version for Windows 10) cannot be used for control Samba AD server, due it requires Active Directory Web Services (ADWS) that should be only plane to be supported ([https://bugzilla.samba.org/show_bug.cgi?id=11231 Samba#11231]).
 
In this task the student should add support to backend of admc ldap request templates to control FSMO and appropriate support of it in graphical part of application.
 
* Difficulty: Hard
* Language(s): C++
* Possible Mentors: Dmitry Degtyarev
 
[[Category:Google Summer of Code]]

Revision as of 06:36, 11 February 2021

Suggested Project ideas

The following are ALT Linux Team project ideas for Summer of Code.

ALT Linux Team and Sisyphus

Basic open source project of ALT Linux Team is Sisyphus. This is large rpm-based open-source software repository.

There are a several development distributions regularly creating on it, and also several stable branches forked from it for product line of distributions.

Sisyphus based on original technologies interesting it self, not as a part of repository and distribution infrastructure:

  • development stack - gear/hasher/mkimage;
  • distribution stack - libshell/control/alterator;
  • infrastructure stack - libnss-role/gpupdate/admc.

Distribution stack ideas

Name Service Switch subsystem control with bash-completion

Name Service Switch (NSS) subsystem provides a variety of sources for common configuration databases and name resolution mechanisms. Current time every distribution have own instruments to control NSS configuration placed in /etc/nsswitch.conf. ALT distributions and other Sisyphus based solutions use special module control to set and restore during system upgrade various system parameters and file modes. Shortly Control is ALT-specific set of scripts to control installed system facilities (like local system policy rules) - "control-policy rules".

Shell completion is a useful function which using everyday not only by developer, but users too. Typing begin part of command or it's argument and pressing [tab] will return a list of probable variant in various contexts (program names, name of files or directories, program arguments and other dynamically determinable options). So each command may different type of options to be taught to autocompleted.

The student should write two special improvements:

  • control-policy rules to control NSS subsystem for all supported configuration databases;
  • common bash-completion rules for all control-policies rules.

The challenge is in doing this in a clean Unix-way style, integrated with other control-policy rules.

  • Difficulty: Medium
  • Language(s): Bash
  • Possible Mentors: Evgeny Sinelnikov

Alterator DBus command line interface

Each modern Linux distributions with UI-interface use special system IPC, called DBus, and authorized for each method by special system service, called PolicyKit. Originally Alterator, as core part of distribution stack, designed with own system interface based on unix-sockets and called woo bus, used as qt-based system control center, graphical instalator anf web-interface. But alterator modules, a this implementation, has no own introspectable interface. Current time we develops alterator-dbus module, which present each method from woo bus to DBus as controlled proxy authorized by policy kit.

The aim of this proposal is twofold:

  • there is no dbus introspection for alterator module at the moment;
  • every module have common (REST API like) woo bus interface, but it also have a special own logic.

The student should write command line interface for alterator modules via DBus and basic alterator modules introspection.

  • Difficulty: Hard
  • Language(s): C, Bash, Scheme (guile)
  • Possible Mentors: Ivan Melnikov

Infrastructure stack ideas

FSMO management in Active Directory Control Center

Flexible Single Master Operations (FSMO) is a feature of Microsoft's Active Directory (AD). The tasks which are not suited to multi-master replication and are viable only with a single-master database are the FSMOs. Active Directory Control Center (admc) is alternative (potentially cross-platform) implementation of Remote Server Administration Tools (RSAT) for control AD.

At the moment modern implementation of RSAT (from newest version for Windows 10) cannot be used for control Samba AD server, due it requires Active Directory Web Services (ADWS) that should be only plane to be supported (Samba#11231).

In this task the student should add support to backend of admc ldap request templates to control FSMO and appropriate support of it in graphical part of application.

  • Difficulty: Hard
  • Language(s): C++
  • Possible Mentors: Dmitry Degtyarev