diff --git a/cfg_checker/helpers/tgz.py b/cfg_checker/helpers/tgz.py
index 5be00e2..9ac84f2 100644
--- a/cfg_checker/helpers/tgz.py
+++ b/cfg_checker/helpers/tgz.py
@@ -55,7 +55,7 @@
             with tarfile.open(self.basefile, "r:gz") as tgz:
                 _tgzitem = tgz.extractfile(tgz.getmember(name))
                 if decode:
-                    return _tgzitem.read().decode('utf-8') 
+                    return _tgzitem.read().decode('utf-8')
                 else:
                     return _tgzitem.read()
         else:
diff --git a/cfg_checker/modules/network/checker.py b/cfg_checker/modules/network/checker.py
index 54dadb9..b65e14d 100644
--- a/cfg_checker/modules/network/checker.py
+++ b/cfg_checker/modules/network/checker.py
@@ -81,4 +81,4 @@
             errors_class=self.errors,
             skip_list=skip_list,
             skip_list_file=skip_list_file
-        )
\ No newline at end of file
+        )
diff --git a/cfg_checker/modules/packages/repos.py b/cfg_checker/modules/packages/repos.py
index 6853a8f..a308864 100644
--- a/cfg_checker/modules/packages/repos.py
+++ b/cfg_checker/modules/packages/repos.py
@@ -135,11 +135,11 @@
             return [], []
         a = page.text.splitlines()
         # Comprehension for dirs. Anchors for ends with '-'
-        _dirs = [l[l.index(_s)+6:l.index(_e)-1]
-                 for l in a if l.startswith(_a) and l.endswith('-')]
+        _dirs = [ll[ll.index(_s)+6:ll.index(_e)-1]
+                 for ll in a if ll.startswith(_a) and ll.endswith('-')]
         # Comprehension for files. Anchors ends with size
-        _files = [l[l.index(_s)+6:l.index(_e)]
-                  for l in a if l.startswith(_a) and not l.endswith('-')]
+        _files = [ll[ll.index(_s)+6:ll.index(_e)]
+                  for ll in a if ll.startswith(_a) and not ll.endswith('-')]
 
         return _dirs, _files
 
@@ -754,10 +754,6 @@
                                 _value = ""
                             else:
                                 _key, _value = _line.split(": ", 1)
-                            # _key = _line[:_line.index(':')]
-
-                            # _value = _line[_line.index(':')+1:]
-                            # _value = _value if _value[0] != ' ' else _value[1:]
                             _key = _key.lower()
                             _desc[_key] = _value
                     # save descriptions if needed
diff --git a/cfg_checker/nodes.py b/cfg_checker/nodes.py
index eea6500..fde217f 100644
--- a/cfg_checker/nodes.py
+++ b/cfg_checker/nodes.py
@@ -39,7 +39,7 @@
                     "\n".join(_invalid)
                 )
             )
-        
+
     # process wildcard, create node list out of mask
     if skip_list:
         _list = []
