Add a table of contents
This commit is contained in:
		
							
								
								
									
										41
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										41
									
								
								README.md
									
									
									
									
									
								
							@@ -1,3 +1,10 @@
 | 
				
			|||||||
 | 
					1. [7digital.rb](#7digitalrb)
 | 
				
			||||||
 | 
					2. [mock\_server.rb](#mock_serverrb)
 | 
				
			||||||
 | 
					3. [read\_logs.rb](#read_logsrb)
 | 
				
			||||||
 | 
					4. [cross\_toolchain.rb](#cross_toolchainrb)
 | 
				
			||||||
 | 
					5. [rename.rb](#renamerb)
 | 
				
			||||||
 | 
					6. [tea-cleaner](#tea-cleaner)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## 7digital.rb
 | 
					## 7digital.rb
 | 
				
			||||||
 | 
					
 | 
				
			||||||
7digital sells digital music but they can't handle files with non-English names.
 | 
					7digital sells digital music but they can't handle files with non-English names.
 | 
				
			||||||
@@ -64,3 +71,37 @@ Call the `rename.rb` without arguments to see the usage information and an
 | 
				
			|||||||
example.
 | 
					example.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## tea-cleaner
 | 
					## tea-cleaner
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					`tea-cleaner` tries to detect spam accounts on a gitea instance and can remove
 | 
				
			||||||
 | 
					them automatically.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Run instructions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					See `tea-cleaner.toml.dist` for a description of the available configuration.
 | 
				
			||||||
 | 
					Copy this file to `config/tea-cleaner.toml` and change at least `token` and
 | 
				
			||||||
 | 
					`server` values. After that if you just run `tea-cleaner` it will give a list
 | 
				
			||||||
 | 
					of user accounts which look suspicious to it. Rerunning the command with the
 | 
				
			||||||
 | 
					`--live-run` flag will purge the listed accounts and all their activities,
 | 
				
			||||||
 | 
					assuming the given token has amdinistrative access to the Gitea instance.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Applied checks:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Critical:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- The account is elder than a month and the user hasn't logged in since then.
 | 
				
			||||||
 | 
					- User information contains banned words (can be adjusted in the configuration file).
 | 
				
			||||||
 | 
					- User's homepage contains percent encoded symbols.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Possible:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- User filled fields for personal information: description and website.
 | 
				
			||||||
 | 
					- The mail address domain is unusual (can be adjusted in the configuration file).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The accounts that violate one of the critical checks are marked for removal
 | 
				
			||||||
 | 
					right away. Other checks trigger an additional lookup for the last user
 | 
				
			||||||
 | 
					activities. If everything user did was creating an empty repository, these
 | 
				
			||||||
 | 
					accounts are marked for removal as well.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The checks are based on my invastigation of spam accounts.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Run `tea-cleanr --help` to see all available command line options. 
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,3 +1,7 @@
 | 
				
			|||||||
 | 
					{- This Source Code Form is subject to the terms of the Mozilla Public License,
 | 
				
			||||||
 | 
					   v. 2.0. If a copy of the MPL was not distributed with this file, You can
 | 
				
			||||||
 | 
					   obtain one at https://mozilla.org/MPL/2.0/. -}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module Main
 | 
					module Main
 | 
				
			||||||
    ( main
 | 
					    ( main
 | 
				
			||||||
    ) where
 | 
					    ) where
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,3 +1,7 @@
 | 
				
			|||||||
 | 
					{- This Source Code Form is subject to the terms of the Mozilla Public License,
 | 
				
			||||||
 | 
					   v. 2.0. If a copy of the MPL was not distributed with this file, You can
 | 
				
			||||||
 | 
					   obtain one at https://mozilla.org/MPL/2.0/. -}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module TeaCleaner.Client
 | 
					module TeaCleaner.Client
 | 
				
			||||||
    ( Activity(..)
 | 
					    ( Activity(..)
 | 
				
			||||||
    , User(..)
 | 
					    , User(..)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,3 +1,7 @@
 | 
				
			|||||||
 | 
					{- This Source Code Form is subject to the terms of the Mozilla Public License,
 | 
				
			||||||
 | 
					   v. 2.0. If a copy of the MPL was not distributed with this file, You can
 | 
				
			||||||
 | 
					   obtain one at https://mozilla.org/MPL/2.0/. -}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module TeaCleaner.Configuration
 | 
					module TeaCleaner.Configuration
 | 
				
			||||||
    ( ProgramOptions(..)
 | 
					    ( ProgramOptions(..)
 | 
				
			||||||
    , Settings(..)
 | 
					    , Settings(..)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,3 +1,7 @@
 | 
				
			|||||||
 | 
					{- This Source Code Form is subject to the terms of the Mozilla Public License,
 | 
				
			||||||
 | 
					   v. 2.0. If a copy of the MPL was not distributed with this file, You can
 | 
				
			||||||
 | 
					   obtain one at https://mozilla.org/MPL/2.0/. -}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module TeaCleaner.Filter
 | 
					module TeaCleaner.Filter
 | 
				
			||||||
    ( FilterResult(..)
 | 
					    ( FilterResult(..)
 | 
				
			||||||
    , UserFilter(..)
 | 
					    , UserFilter(..)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,3 +1,7 @@
 | 
				
			|||||||
 | 
					{- This Source Code Form is subject to the terms of the Mozilla Public License,
 | 
				
			||||||
 | 
					   v. 2.0. If a copy of the MPL was not distributed with this file, You can
 | 
				
			||||||
 | 
					   obtain one at https://mozilla.org/MPL/2.0/. -}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module TeaCleaner.Options
 | 
					module TeaCleaner.Options
 | 
				
			||||||
    ( jsonOptions
 | 
					    ( jsonOptions
 | 
				
			||||||
    ) where
 | 
					    ) where
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user