Compare commits
10 commits
ced7113d4f
...
579067d5d6
Author | SHA1 | Date | |
---|---|---|---|
579067d5d6 | |||
f5040248d9 | |||
4464d7614e | |||
9edea34132 | |||
f35879bb15 | |||
c94a6eec68 | |||
789d4e9714 | |||
38f01d4ceb | |||
b1838e80a4 | |||
6793974b6d |
9 changed files with 109 additions and 29 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -1,2 +1,3 @@
|
||||||
__pycache__
|
__pycache__
|
||||||
/.idea
|
/.idea
|
||||||
|
/dist
|
||||||
|
|
|
@ -8,14 +8,13 @@ MODULES=(
|
||||||
'exfat' 'fat' 'hfs' 'hfspluscomp' 'ntfscomp'
|
'exfat' 'fat' 'hfs' 'hfspluscomp' 'ntfscomp'
|
||||||
'linux' 'loopback' 'squash4'
|
'linux' 'loopback' 'squash4'
|
||||||
#
|
#
|
||||||
# 'at_keyboard' 'cpuid' 'keylayouts' ← not in arm64-efi
|
# 'at_keyboard' 'cpuid' 'keylayouts' 'lspci' ← not in arm64-efi
|
||||||
'keystatus' 'read'
|
'keystatus' 'read'
|
||||||
'halt' 'reboot'
|
'halt' 'reboot'
|
||||||
'all_video' 'videoinfo'
|
'all_video' 'videoinfo'
|
||||||
'gfxterm_background' 'jpeg' 'png' 'tga'
|
'gfxterm_background' 'jpeg' 'png' 'tga'
|
||||||
#
|
#
|
||||||
'date' 'echo' 'eval' 'help' 'sleep' 'test' 'true'
|
'date' 'echo' 'eval' 'help' 'sleep' 'test' 'true'
|
||||||
'lspci'
|
|
||||||
'cat' 'configfile' 'loadenv' 'progress' 'testspeed'
|
'cat' 'configfile' 'loadenv' 'progress' 'testspeed'
|
||||||
'hashsum' 'gcry_sha256' 'gcry_sha512'
|
'hashsum' 'gcry_sha256' 'gcry_sha512'
|
||||||
'pgp' 'gcry_dsa' 'gcry_rsa'
|
'pgp' 'gcry_dsa' 'gcry_rsa'
|
||||||
|
|
2
build.sh
2
build.sh
|
@ -222,7 +222,7 @@ if [ -f "${SIGNED_ARM_GRUB}" ] ; then
|
||||||
↙ ${SIGNED_ARM_GRUB}
|
↙ ${SIGNED_ARM_GRUB}
|
||||||
↘ ${ARM_GRUB}
|
↘ ${ARM_GRUB}
|
||||||
"
|
"
|
||||||
cp "${SIGNED_ARM_GRUB}" "${UEFI_GRUB}"
|
cp "${SIGNED_ARM_GRUB}" "${ARM_GRUB}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# bios ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
# bios ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
||||||
|
|
44
license.md
44
license.md
|
@ -1,4 +1,4 @@
|
||||||
### GNU AFFERO GENERAL PUBLIC LICENSE
|
# GNU AFFERO GENERAL PUBLIC LICENSE
|
||||||
|
|
||||||
Version 3, 19 November 2007
|
Version 3, 19 November 2007
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ Copyright (C) 2007 Free Software Foundation, Inc.
|
||||||
Everyone is permitted to copy and distribute verbatim copies of this
|
Everyone is permitted to copy and distribute verbatim copies of this
|
||||||
license document, but changing it is not allowed.
|
license document, but changing it is not allowed.
|
||||||
|
|
||||||
### Preamble
|
## Preamble
|
||||||
|
|
||||||
The GNU Affero General Public License is a free, copyleft license for
|
The GNU Affero General Public License is a free, copyleft license for
|
||||||
software and other kinds of works, specifically designed to ensure
|
software and other kinds of works, specifically designed to ensure
|
||||||
|
@ -59,9 +59,9 @@ under this license.
|
||||||
The precise terms and conditions for copying, distribution and
|
The precise terms and conditions for copying, distribution and
|
||||||
modification follow.
|
modification follow.
|
||||||
|
|
||||||
### TERMS AND CONDITIONS
|
## TERMS AND CONDITIONS
|
||||||
|
|
||||||
#### 0. Definitions.
|
### 0. Definitions.
|
||||||
|
|
||||||
"This License" refers to version 3 of the GNU Affero General Public
|
"This License" refers to version 3 of the GNU Affero General Public
|
||||||
License.
|
License.
|
||||||
|
@ -102,7 +102,7 @@ work under this License, and how to view a copy of this License. If
|
||||||
the interface presents a list of user commands or options, such as a
|
the interface presents a list of user commands or options, such as a
|
||||||
menu, a prominent item in the list meets this criterion.
|
menu, a prominent item in the list meets this criterion.
|
||||||
|
|
||||||
#### 1. Source Code.
|
### 1. Source Code.
|
||||||
|
|
||||||
The "source code" for a work means the preferred form of the work for
|
The "source code" for a work means the preferred form of the work for
|
||||||
making modifications to it. "Object code" means any non-source form of
|
making modifications to it. "Object code" means any non-source form of
|
||||||
|
@ -143,7 +143,7 @@ regenerate automatically from other parts of the Corresponding Source.
|
||||||
The Corresponding Source for a work in source code form is that same
|
The Corresponding Source for a work in source code form is that same
|
||||||
work.
|
work.
|
||||||
|
|
||||||
#### 2. Basic Permissions.
|
### 2. Basic Permissions.
|
||||||
|
|
||||||
All rights granted under this License are granted for the term of
|
All rights granted under this License are granted for the term of
|
||||||
copyright on the Program, and are irrevocable provided the stated
|
copyright on the Program, and are irrevocable provided the stated
|
||||||
|
@ -168,7 +168,7 @@ Conveying under any other circumstances is permitted solely under the
|
||||||
conditions stated below. Sublicensing is not allowed; section 10 makes
|
conditions stated below. Sublicensing is not allowed; section 10 makes
|
||||||
it unnecessary.
|
it unnecessary.
|
||||||
|
|
||||||
#### 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
### 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||||
|
|
||||||
No covered work shall be deemed part of an effective technological
|
No covered work shall be deemed part of an effective technological
|
||||||
measure under any applicable law fulfilling obligations under article
|
measure under any applicable law fulfilling obligations under article
|
||||||
|
@ -184,7 +184,7 @@ operation or modification of the work as a means of enforcing, against
|
||||||
the work's users, your or third parties' legal rights to forbid
|
the work's users, your or third parties' legal rights to forbid
|
||||||
circumvention of technological measures.
|
circumvention of technological measures.
|
||||||
|
|
||||||
#### 4. Conveying Verbatim Copies.
|
### 4. Conveying Verbatim Copies.
|
||||||
|
|
||||||
You may convey verbatim copies of the Program's source code as you
|
You may convey verbatim copies of the Program's source code as you
|
||||||
receive it, in any medium, provided that you conspicuously and
|
receive it, in any medium, provided that you conspicuously and
|
||||||
|
@ -197,7 +197,7 @@ recipients a copy of this License along with the Program.
|
||||||
You may charge any price or no price for each copy that you convey,
|
You may charge any price or no price for each copy that you convey,
|
||||||
and you may offer support or warranty protection for a fee.
|
and you may offer support or warranty protection for a fee.
|
||||||
|
|
||||||
#### 5. Conveying Modified Source Versions.
|
### 5. Conveying Modified Source Versions.
|
||||||
|
|
||||||
You may convey a work based on the Program, or the modifications to
|
You may convey a work based on the Program, or the modifications to
|
||||||
produce it from the Program, in the form of source code under the
|
produce it from the Program, in the form of source code under the
|
||||||
|
@ -232,7 +232,7 @@ beyond what the individual works permit. Inclusion of a covered work
|
||||||
in an aggregate does not cause this License to apply to the other
|
in an aggregate does not cause this License to apply to the other
|
||||||
parts of the aggregate.
|
parts of the aggregate.
|
||||||
|
|
||||||
#### 6. Conveying Non-Source Forms.
|
### 6. Conveying Non-Source Forms.
|
||||||
|
|
||||||
You may convey a covered work in object code form under the terms of
|
You may convey a covered work in object code form under the terms of
|
||||||
sections 4 and 5, provided that you also convey the machine-readable
|
sections 4 and 5, provided that you also convey the machine-readable
|
||||||
|
@ -328,7 +328,7 @@ documented (and with an implementation available to the public in
|
||||||
source code form), and must require no special password or key for
|
source code form), and must require no special password or key for
|
||||||
unpacking, reading or copying.
|
unpacking, reading or copying.
|
||||||
|
|
||||||
#### 7. Additional Terms.
|
### 7. Additional Terms.
|
||||||
|
|
||||||
"Additional permissions" are terms that supplement the terms of this
|
"Additional permissions" are terms that supplement the terms of this
|
||||||
License by making exceptions from one or more of its conditions.
|
License by making exceptions from one or more of its conditions.
|
||||||
|
@ -387,7 +387,7 @@ Additional terms, permissive or non-permissive, may be stated in the
|
||||||
form of a separately written license, or stated as exceptions; the
|
form of a separately written license, or stated as exceptions; the
|
||||||
above requirements apply either way.
|
above requirements apply either way.
|
||||||
|
|
||||||
#### 8. Termination.
|
### 8. Termination.
|
||||||
|
|
||||||
You may not propagate or modify a covered work except as expressly
|
You may not propagate or modify a covered work except as expressly
|
||||||
provided under this License. Any attempt otherwise to propagate or
|
provided under this License. Any attempt otherwise to propagate or
|
||||||
|
@ -415,7 +415,7 @@ this License. If your rights have been terminated and not permanently
|
||||||
reinstated, you do not qualify to receive new licenses for the same
|
reinstated, you do not qualify to receive new licenses for the same
|
||||||
material under section 10.
|
material under section 10.
|
||||||
|
|
||||||
#### 9. Acceptance Not Required for Having Copies.
|
### 9. Acceptance Not Required for Having Copies.
|
||||||
|
|
||||||
You are not required to accept this License in order to receive or run
|
You are not required to accept this License in order to receive or run
|
||||||
a copy of the Program. Ancillary propagation of a covered work
|
a copy of the Program. Ancillary propagation of a covered work
|
||||||
|
@ -426,7 +426,7 @@ modify any covered work. These actions infringe copyright if you do
|
||||||
not accept this License. Therefore, by modifying or propagating a
|
not accept this License. Therefore, by modifying or propagating a
|
||||||
covered work, you indicate your acceptance of this License to do so.
|
covered work, you indicate your acceptance of this License to do so.
|
||||||
|
|
||||||
#### 10. Automatic Licensing of Downstream Recipients.
|
### 10. Automatic Licensing of Downstream Recipients.
|
||||||
|
|
||||||
Each time you convey a covered work, the recipient automatically
|
Each time you convey a covered work, the recipient automatically
|
||||||
receives a license from the original licensors, to run, modify and
|
receives a license from the original licensors, to run, modify and
|
||||||
|
@ -451,7 +451,7 @@ rights granted under this License, and you may not initiate litigation
|
||||||
any patent claim is infringed by making, using, selling, offering for
|
any patent claim is infringed by making, using, selling, offering for
|
||||||
sale, or importing the Program or any portion of it.
|
sale, or importing the Program or any portion of it.
|
||||||
|
|
||||||
#### 11. Patents.
|
### 11. Patents.
|
||||||
|
|
||||||
A "contributor" is a copyright holder who authorizes use under this
|
A "contributor" is a copyright holder who authorizes use under this
|
||||||
License of the Program or a work on which the Program is based. The
|
License of the Program or a work on which the Program is based. The
|
||||||
|
@ -520,7 +520,7 @@ Nothing in this License shall be construed as excluding or limiting
|
||||||
any implied license or other defenses to infringement that may
|
any implied license or other defenses to infringement that may
|
||||||
otherwise be available to you under applicable patent law.
|
otherwise be available to you under applicable patent law.
|
||||||
|
|
||||||
#### 12. No Surrender of Others' Freedom.
|
### 12. No Surrender of Others' Freedom.
|
||||||
|
|
||||||
If conditions are imposed on you (whether by court order, agreement or
|
If conditions are imposed on you (whether by court order, agreement or
|
||||||
otherwise) that contradict the conditions of this License, they do not
|
otherwise) that contradict the conditions of this License, they do not
|
||||||
|
@ -533,7 +533,7 @@ from those to whom you convey the Program, the only way you could
|
||||||
satisfy both those terms and this License would be to refrain entirely
|
satisfy both those terms and this License would be to refrain entirely
|
||||||
from conveying the Program.
|
from conveying the Program.
|
||||||
|
|
||||||
#### 13. Remote Network Interaction; Use with the GNU General Public License.
|
### 13. Remote Network Interaction; Use with the GNU General Public License.
|
||||||
|
|
||||||
Notwithstanding any other provision of this License, if you modify the
|
Notwithstanding any other provision of this License, if you modify the
|
||||||
Program, your modified version must prominently offer all users
|
Program, your modified version must prominently offer all users
|
||||||
|
@ -554,7 +554,7 @@ License will continue to apply to the part which is the covered work,
|
||||||
but the work with which it is combined will remain governed by version
|
but the work with which it is combined will remain governed by version
|
||||||
3 of the GNU General Public License.
|
3 of the GNU General Public License.
|
||||||
|
|
||||||
#### 14. Revised Versions of this License.
|
### 14. Revised Versions of this License.
|
||||||
|
|
||||||
The Free Software Foundation may publish revised and/or new versions
|
The Free Software Foundation may publish revised and/or new versions
|
||||||
of the GNU Affero General Public License from time to time. Such new
|
of the GNU Affero General Public License from time to time. Such new
|
||||||
|
@ -580,7 +580,7 @@ permissions. However, no additional obligations are imposed on any
|
||||||
author or copyright holder as a result of your choosing to follow a
|
author or copyright holder as a result of your choosing to follow a
|
||||||
later version.
|
later version.
|
||||||
|
|
||||||
#### 15. Disclaimer of Warranty.
|
### 15. Disclaimer of Warranty.
|
||||||
|
|
||||||
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
||||||
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
||||||
|
@ -592,7 +592,7 @@ PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE
|
||||||
DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR
|
DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR
|
||||||
CORRECTION.
|
CORRECTION.
|
||||||
|
|
||||||
#### 16. Limitation of Liability.
|
### 16. Limitation of Liability.
|
||||||
|
|
||||||
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR
|
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR
|
||||||
|
@ -604,7 +604,7 @@ LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM
|
||||||
TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER
|
TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER
|
||||||
PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
|
PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
|
||||||
|
|
||||||
#### 17. Interpretation of Sections 15 and 16.
|
### 17. Interpretation of Sections 15 and 16.
|
||||||
|
|
||||||
If the disclaimer of warranty and limitation of liability provided
|
If the disclaimer of warranty and limitation of liability provided
|
||||||
above cannot be given local legal effect according to their terms,
|
above cannot be given local legal effect according to their terms,
|
||||||
|
@ -615,7 +615,7 @@ copy of the Program in return for a fee.
|
||||||
|
|
||||||
END OF TERMS AND CONDITIONS
|
END OF TERMS AND CONDITIONS
|
||||||
|
|
||||||
### How to Apply These Terms to Your New Programs
|
## How to Apply These Terms to Your New Programs
|
||||||
|
|
||||||
If you develop a new program, and you want it to be of the greatest
|
If you develop a new program, and you want it to be of the greatest
|
||||||
possible use to the public, the best way to achieve this is to make it
|
possible use to the public, the best way to achieve this is to make it
|
||||||
|
|
|
@ -3,8 +3,11 @@ menu_init
|
||||||
|
|
||||||
default='lg'
|
default='lg'
|
||||||
|
|
||||||
menuentry 'bash / stable / tui' --id 'st' { debsquash '/boot/bash/stable/tui' }
|
menuentry 'bash / stable / tui' --id 'st' { debsquash '/w/boot/bash/stable/tui' }
|
||||||
menuentry 'bash / stable / gui' --id 'sg' { debsquash '/boot/bash/stable/gui' }
|
menuentry 'bash / stable / gui' --id 'sg' { debsquash '/w/boot/bash/stable/gui' }
|
||||||
menu_split
|
menu_split
|
||||||
menuentry 'bash / latest / tui' --id 'lt' { debsquash '/boot/bash/latest/tui' }
|
menuentry 'bash / latest / tui' --id 'lt' { debsquash '/w/boot/bash/latest/tui' }
|
||||||
menuentry 'bash / latest / gui' --id 'lg' { debsquash '/boot/bash/latest/gui' }
|
menuentry 'bash / latest / gui' --id 'lg' { debsquash '/w/boot/bash/latest/gui' }
|
||||||
|
menu_split
|
||||||
|
menuentry 'alma / stable' { almsquash '/w/boot/alma/stable' }
|
||||||
|
menuentry 'alma / latest' { almsquash '/w/boot/alma/latest' }
|
||||||
|
|
|
@ -1,3 +1,46 @@
|
||||||
|
function almsquash {
|
||||||
|
lmp="${1}"
|
||||||
|
sfs='squashfs.img'
|
||||||
|
#
|
||||||
|
if [ "${check_squashfs}" == 'enforce' ] ; then
|
||||||
|
chk="(${data})${lmp}/${sfs}"
|
||||||
|
echo 'verify_detached'
|
||||||
|
echo "${chk}"
|
||||||
|
if ! verify_detached "${chk}" "${chk}.sig" ; then
|
||||||
|
grub_pause
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
if [ -f "(${data})${lmp}/vmlinuz" ] ; then
|
||||||
|
linux_path="(${data})${lmp}/vmlinuz"
|
||||||
|
initrd_path="(${data})${lmp}/initrd.img"
|
||||||
|
else
|
||||||
|
linux_path="(squash)/vmlinuz"
|
||||||
|
initrd_path="(squash)/initrd.img"
|
||||||
|
loopback "squash" "${lmp}/${sfs}"
|
||||||
|
fi
|
||||||
|
#
|
||||||
|
echo
|
||||||
|
echo 'linux'
|
||||||
|
echo "${linux_path}"
|
||||||
|
toram=''
|
||||||
|
if [ "${live_from}" == 'ram' ] ; then
|
||||||
|
toram='rd.live.ram=1'
|
||||||
|
fi
|
||||||
|
linux \
|
||||||
|
"${linux_path}" \
|
||||||
|
elevator='deadline' \
|
||||||
|
ip='frommedia' \
|
||||||
|
rd.live.dir="${lmp}" \
|
||||||
|
rd.live.squashimg="${sfs}" \
|
||||||
|
"${toram}"
|
||||||
|
#
|
||||||
|
echo
|
||||||
|
echo 'initrd'
|
||||||
|
echo "${initrd_path}"
|
||||||
|
initrd "${initrd_path}"
|
||||||
|
}
|
||||||
|
|
||||||
function debsquash {
|
function debsquash {
|
||||||
lmp="${1}"
|
lmp="${1}"
|
||||||
sfs="filesystem.squashfs"
|
sfs="filesystem.squashfs"
|
||||||
|
|
34
pyproject.toml
Normal file
34
pyproject.toml
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[build-system]
|
||||||
|
requires = ['hatchling']
|
||||||
|
build-backend = 'hatchling.build'
|
||||||
|
|
||||||
|
[project]
|
||||||
|
authors = [
|
||||||
|
{ name = 'Marc Beninca', email = 'git@marc.beninca.link' },
|
||||||
|
]
|
||||||
|
maintainers = [
|
||||||
|
{ name = 'Marc Beninca', email = 'git@marc.beninca.link' },
|
||||||
|
]
|
||||||
|
classifiers = [
|
||||||
|
'Programming Language :: Python :: 3',
|
||||||
|
'License :: OSI Approved :: GNU Affero General Public License v3',
|
||||||
|
'Operating System :: OS Independent',
|
||||||
|
]
|
||||||
|
dependencies = [
|
||||||
|
'rwx',
|
||||||
|
]
|
||||||
|
description = 'Live Scan Grub Menu'
|
||||||
|
dynamic = ['version']
|
||||||
|
keywords = []
|
||||||
|
license-files = { paths = ['license.md'] }
|
||||||
|
name = 'lsgm'
|
||||||
|
readme = 'readme.md'
|
||||||
|
requires-python = '>= 3.10'
|
||||||
|
|
||||||
|
[project.scripts]
|
||||||
|
# command = 'package.module:function'
|
||||||
|
|
||||||
|
[project.urls]
|
||||||
|
|
||||||
|
[tool.hatch.version]
|
||||||
|
path = 'lsgm/__init__.py'
|
Loading…
Add table
Reference in a new issue