43 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
- write classes/functions
 | 
						|
- XML-based config
 | 
						|
-x XML syntax
 | 
						|
--- regex btags - case-insensitive? this can be represented in-pattern:
 | 
						|
    https://stackoverflow.com/a/9655186/733214
 | 
						|
-x configuration generator
 | 
						|
--- print end result xml config to stderr for easier redirection? or print prompts to stderr and xml to stdout?
 | 
						|
-- XSD for validation
 | 
						|
-- Flask app for generating config?
 | 
						|
-- TKinter (or pygame?) GUI?
 | 
						|
--- https://docs.python.org/3/faq/gui.html
 | 
						|
--- https://www.pygame.org/wiki/gui
 | 
						|
- ensure we use docstrings in a Sphinx-compatible manner?
 | 
						|
  https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html
 | 
						|
  at the very least document all the functions and such so pydoc's happy.
 | 
						|
 | 
						|
- locking
 | 
						|
- for docs, 3.x (as of 3.10) was 2.4M.
 | 
						|
- Need ability to write/parse mtree specs (or a similar equivalent) for applying ownerships/permissions to overlay files
 | 
						|
 | 
						|
- need to package:
 | 
						|
  python-hashid (https://psypanda.github.io/hashID/,
 | 
						|
                 https://github.com/psypanda/hashID,
 | 
						|
                 https://pypi.org/project/hashID/)
 | 
						|
 | 
						|
- package for PyPI:
 | 
						|
# https://packaging.python.org/tutorials/distributing-packages/
 | 
						|
# https://docs.python.org/3/distutils/apiref.html
 | 
						|
# https://python-packaging.readthedocs.io/en/latest/minimal.html
 | 
						|
# https://setuptools.readthedocs.io/en/latest/setuptools.html#new-and-changed-setup-keywords
 | 
						|
 | 
						|
 | 
						|
BUGS.SQUARE-R00T.NET bugs/tasks:
 | 
						|
#7:  Ensure conditional deps/imports for features only if used.
 | 
						|
     Is this setup.py-compatible?
 | 
						|
     nooope. just make everything a dep.
 | 
						|
#14: Use os.path.join() for more consistency/pythonicness
 | 
						|
#24: Run as regular user? (pychroot? fakeroot?)
 | 
						|
#34: Build-time support for only building single phase of build
 | 
						|
#36: Allow parsing pkg lists with inline comments
 | 
						|
#39: Fix UEFI
 | 
						|
#40: ISO overlay (to add e.g. memtest86+ to final ISO)
 | 
						|
#43: Support resuming partial tarball downloads (Accept-Ranges: bytes) |