marcus67 / little_brother

Parental Control Application implemented in Python 3 packaged for Debian and Ubuntu to monitor and limit kids' play time on Linux hosts
GNU General Public License v3.0
59 stars 9 forks source link

enhance process matching by allowing substring matching in full command line #120

Closed bhulsken closed 3 years ago

bhulsken commented 3 years ago

pull-request #119

When using Little-Brother to monitor time spend on playing java games (such as Minecraft), the process matching is not so useful (since the process name is java, which is potentially shared with other java programs that are not games).

With this change, you can match a substring in the full command line (e.g. "minecraft") to distinguish a game from another java program. It changes existing behavior though in the sense that pattern matches that were negative before could now be positive (due to substring match, or match in full commandline). Regressions will be limited I guess though, as it won't cause current positive matches to change to negative.

marcus67 commented 3 years ago

Hi Bas, thanks for the pull request. I will take over the part scanning the whole command line including the options, which can be switched on using a configuration option. However, I will stick to match instead of search. Your patterns should work in the new compatibility mode which is to say that patterns will be embraced by .*( ... ).* if they do not contain at least one /. I think the new version will be available until Tuesday. It would be nice if you could do a test.

bhulsken commented 3 years ago

Thanks Marcus, that will work! I will test once you have the new version available!

marcus67 commented 3 years ago

Version 0.3.12 (master branch) has just been uploaded. In order to make your setup work you will have to set this option in file /etc/little-brother/little-brother.config:

[ClientProcessHandler]
scan_command_line_options=True

Thanks for testing!

marcus67 commented 3 years ago

Hi Bas, may I ask what your native language is? Maybe you are willing to contribute to LittleBrother by providing/updating a localization in your native language? Thanks a lot!

bhulsken commented 3 years ago

Hi Marcus,

my native language is Dutch, but unfortunately I have very little time to contribute to open source with my current job. What time I have I prefer to contribute code/bug fixes.. as that helps me keep my programming skills a bit current.

The 0.3.12 version works for me with matching the command line by the way, thanks!

marcus67 commented 3 years ago

Hi Bas, I understand completely. Time is a precious resource. Would you be willing to star my LittleBrother project at GitHub? If you also use LittleBrotherTaskbar, I would be happy about a star there, too. Thanks! Also for testing!