Inital rework/reorganization
more to do
This commit is contained in:
parent
ed31f39058
commit
4d4145f16f
8
filesystem/makefile
Normal file
8
filesystem/makefile
Normal file
@ -0,0 +1,8 @@
|
||||
filesystem_packages:
|
||||
$(MAKE) -C packages all
|
||||
|
||||
filesystem_packages_clean:
|
||||
$(MAKE) -C packages clean
|
||||
|
||||
filesystem_packages_install:
|
||||
$(MAKE) -C packages INSTALL_TARGET=$(INSTALL_TARGET) install
|
20
initramfs/makefile
Normal file
20
initramfs/makefile
Normal file
@ -0,0 +1,20 @@
|
||||
ifndef INITRAMFS_MK
|
||||
INITRAMFS_MK := 1
|
||||
ifndef PRAWNOS_ROOT
|
||||
PRAWNOS_ROOT := $(shell git rev-parse --show-toplevel)
|
||||
endif
|
||||
include $(PRAWNOS_ROOT)/scripts/BuildScripts/BuildCommon.mk
|
||||
|
||||
INITRAMFS_RESOURCES := $(PRAWNOS_PACKAGE_INITRAMFS)/resources
|
||||
|
||||
.PHONY: initramfs initramfs_clean
|
||||
|
||||
initramfs: $(PRAWNOS_INITRAMFS)
|
||||
|
||||
initramfs_clean:
|
||||
rm -f $(PRAWNOS_INITRAMFS)
|
||||
|
||||
$(PRAWNOS_INITRAMFS):
|
||||
$(PRAWNOS_INITRAMFS_SCRIPTS_BUILD) $(PRAWNOS_IMAGE_BASE) $(INITRAMFS_RESOURCES) $(PRAWNOS_BUILD)
|
||||
|
||||
endif
|
90
kernel/makefile
Normal file
90
kernel/makefile
Normal file
@ -0,0 +1,90 @@
|
||||
ifndef KERNEL_MK
|
||||
KERNEL_MK := 1
|
||||
ifndef PRAWNOS_ROOT
|
||||
PRAWNOS_ROOT := $(shell git rev-parse --show-toplevel)
|
||||
endif
|
||||
include $(PRAWNOS_ROOT)/scripts/BuildScripts/BuildCommon.mk
|
||||
|
||||
KERNEL_PATCHED := $(PRAWNOS_KERNEL_BUILD)/.kernel_patched
|
||||
KERNEL_EXTRACTED := $(PRAWNOS_KERNEL_BUILD)/.kernel_extracted
|
||||
ATH9K_EXTRACTED := $(PRAWNOS_ATH9K_BUILD)/.ath9k_extracted
|
||||
|
||||
KERNEL_RESOURCES := $(PRAWNOS_KERNEL)/resources
|
||||
KERNEL_SOURCES := $(PRAWNOS_KERNEL)/sources
|
||||
KERNEL_PATCHES := $(PRAWNOS_KERNEL)/patches
|
||||
|
||||
KERNEL_TAR := $(KERNEL_SOURCES)/linux-libre-$(KVER)-gnu.tar.lz
|
||||
KERNEL_TAR_SIGNATURE := $(KERNEL_TAR).sign
|
||||
|
||||
KERNEL_BUILT := $(PRAWNOS_KERNEL_BUILD)/vmlinux.kpart
|
||||
|
||||
ATH9K_TAR := $(KERNEL_SOURCES)/open-ath9k-htc-firmware.tar.gz
|
||||
ATH9K := open-ath9k-htc-firmware
|
||||
|
||||
### PHONY TARGETS
|
||||
.PHONY: kernel
|
||||
kernel: $(KERNEL_BUILT)
|
||||
|
||||
.PHONY: ath9k
|
||||
ath9k: extract_ath9k
|
||||
$(PRAWNOS_KERNEL_SCRIPTS_BUILD_ATH9K) $(PRAWNOS_ATH9K_BUILD)
|
||||
|
||||
.PHONY: patch_kernel
|
||||
patch_kernel: $(KERNEL_PATCHED)
|
||||
|
||||
.PHONY: extract_kernel
|
||||
extract_kernel: $(KERNEL_EXTRACTED)
|
||||
|
||||
.PHONY: extract_ath9k
|
||||
extract_ath9k: $(ATH9K_EXTRACTED)
|
||||
|
||||
.PHONY: package_kernel
|
||||
packages: kernel
|
||||
@echo TODO
|
||||
|
||||
### CLEAN TARGETS
|
||||
|
||||
.PHONY: clean_kernel
|
||||
clean_kernel:
|
||||
rm -rf $(PRAWNOS_KERNEL_BUILD)
|
||||
|
||||
.PHONY: clean_ath9k
|
||||
clean_ath9k:
|
||||
rm -rf $(PRAWNOS_ATH9K_BUILD)
|
||||
|
||||
### DEVELOPER TARGETS
|
||||
|
||||
.PHONY: update_ath9k_tar
|
||||
update_ath9k_tar:
|
||||
mkdir -p tmp/$(ATH9K)
|
||||
git clone --depth 1 https://github.com/qca/open-ath9k-htc-firmware.git tmp/$(ATH9K)
|
||||
cd tmp && tar czvf $(ATH9K_SOURCE) $(ATH9K)
|
||||
rm -rf tmp/
|
||||
|
||||
.PHONY: update_kernel_tar
|
||||
update_kernel_tar:
|
||||
wget https://www.linux-libre.fsfla.org/pub/linux-libre/releases/$(KVER)-gnu/linux-libre-$(KVER)-gnu.tar.lz -O $(KERNEL_TAR)
|
||||
wget https://www.linux-libre.fsfla.org/pub/linux-libre/releases/$KVER-gnu/linux-libre-$(KVER)-gnu.tar.lz.sign -O $(KERNEL_TAR_SIGNATURE)
|
||||
|
||||
### REAL TARGETS
|
||||
|
||||
$(KERNEL_EXTRACTED): $(PRAWNOS_BUILD)
|
||||
gpg --import $(KERNEL_RESOURCES)/linux-libre-signing-key.gpg
|
||||
gpg --verify $(KERNEL_TAR_SIGNATURE) $(KERNEL_TAR)
|
||||
tar --lzip -xvf $(KERNEL_TAR) -C $(PRAWNOS_BUILD)
|
||||
touch $(KERNEL_EXTRACTED)
|
||||
|
||||
$(ATH9K_EXTRACTED): $(PRAWNOS_BUILD)
|
||||
tar -xvf $(ATH9K_TAR) -C $(PRAWNOS_BUILD)
|
||||
touch $(ATH9K_EXTRACTED)
|
||||
|
||||
$(KERNEL_PATCHED): $(KERNEL_EXTRACTED)
|
||||
@echo $(PRAWNOS_KERNEL_BUILD)
|
||||
$(PRAWNOS_KERNEL_SCRIPTS_PATCH) $(KVER) $(KERNEL_PATCHES) $(PRAWNOS_KERNEL_BUILD)
|
||||
touch $(KERNEL_PATCHED)
|
||||
|
||||
$(KERNEL_BUILT): $(KERNEL_EXTRACTED) $(KERNEL_PATCHED) ath9k
|
||||
make -C $(PRAWNOS_INITRAMFS)
|
||||
$(PRAWNOS_KERNEL_SCRIPTS_BUILD) $(KVER) $(KERNEL_RESOURCES) $(PRAWNOS_KERNEL_BUILD) $(PRAWNOS_INITRAMFS_IMAGE)
|
||||
|
||||
endif
|
BIN
kernel/sources/open-ath9k-htc-firmware.tar.gz
Normal file
BIN
kernel/sources/open-ath9k-htc-firmware.tar.gz
Normal file
Binary file not shown.
101
makefile
101
makefile
@ -13,23 +13,15 @@
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with PrawnOS. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
KVER=5.4.29
|
||||
ifeq ($(DEBIAN_SUITE),)
|
||||
DEBIAN_SUITE=buster
|
||||
endif
|
||||
ifeq ($(PRAWNOS_SUITE),)
|
||||
PRAWNOS_SUITE=Shiba
|
||||
endif
|
||||
OUTNAME=PrawnOS-$(PRAWNOS_SUITE)-c201.img
|
||||
BASE=$(OUTNAME)-BASE
|
||||
|
||||
.DEFAULT_GOAL := image
|
||||
PRAWNOS_ROOT := $(shell git rev-parse --show-toplevel)
|
||||
include $(PRAWNOS_ROOT)/scripts/BuildScripts/BuildCommon.mk
|
||||
|
||||
include $(PRAWNOS_ROOT)/initramfs/makefile
|
||||
include $(PRAWNOS_ROOT)/kernel/makefile
|
||||
|
||||
#Usage:
|
||||
#run make image
|
||||
#this will generate two images named OUTNAME and OUTNAME-BASE
|
||||
#this will generate two images named PRAWNOS_IMAGE and PRAWNOS_IMAGE-BASE
|
||||
#-BASE is only the filesystem with no kernel.
|
||||
|
||||
|
||||
@ -41,79 +33,34 @@ include $(PRAWNOS_ROOT)/scripts/BuildScripts/BuildCommon.mk
|
||||
.PHONY: clean
|
||||
clean:
|
||||
@echo "Enter one of:"
|
||||
@echo " clean_kernel - which deletes the untar'd kernel folder from build"
|
||||
@echo " clean_ath - which deletes the untar'd ath9k driver folder from build"
|
||||
@echo " clean_img - which deletes the built PrawnOS image, this is ran when make image is ran"
|
||||
@echo " clean_basefs - which deletes the built PrawnOS base image"
|
||||
@echo " clean_initramfs - which deletes the built PrawnOS initramfs image that gets injected into the kernel"
|
||||
@echo " clean_all - which does all of the above"
|
||||
@echo " in most cases none of these need to be used manually as most cleanup steps are handled automatically"
|
||||
#TODO
|
||||
|
||||
.PHONY: clean_kernel
|
||||
clean_kernel:
|
||||
rm -rf build/linux-$(KVER)
|
||||
|
||||
.PHONY: clean_ath
|
||||
clean_ath:
|
||||
rm -rf build/open-ath9k-htc-firmware
|
||||
|
||||
.PHONY: clean_img
|
||||
.PHONY: clean_image
|
||||
clean_img:
|
||||
rm -f $(OUTNAME)
|
||||
rm -f $(PRAWNOS_IMAGE)
|
||||
|
||||
.PHONY: clean_basefs
|
||||
clean_basefs:
|
||||
rm -r $(BASE)
|
||||
|
||||
.PHONY: clean_initramfs
|
||||
clean_initramfs:
|
||||
rm -r build/PrawnOS-initramfs.cpio.gz
|
||||
|
||||
.PHONY: clean_packages
|
||||
clean_packages:
|
||||
cd packages && $(MAKE) clean
|
||||
rm -f $(PRAWNOS_IMAGE_BASE)
|
||||
|
||||
.PHONY: clean_pbuilder
|
||||
clean_pbuilder:
|
||||
rm -r build/prawnos-pbuilder-armhf-base.tgz
|
||||
|
||||
.PHONY: clean_all
|
||||
clean_all:
|
||||
$(MAKE) clean_kernel
|
||||
$(MAKE) clean_ath
|
||||
$(MAKE) clean_img
|
||||
$(MAKE) clean_basefs
|
||||
$(MAKE) clean_initramfs
|
||||
$(MAKE) clean_pbuilder
|
||||
$(MAKE) clean_packages
|
||||
clean_all: clean_kernel clean_initramfs clean_ath9k clean_image clean_basefs clean_pbuilder
|
||||
|
||||
#:::::::::::::::::::::::::::::: premake prep ::::::::::::::::::::::::::::::
|
||||
.PHONY: build_dirs
|
||||
build_dirs:
|
||||
mkdir -p build/logs/
|
||||
mkdir -p build/apt-cache/
|
||||
build_dirs: $(PRAWNOS_BUILD)
|
||||
|
||||
|
||||
#:::::::::::::::::::::::::::::: kernel ::::::::::::::::::::::::::::::::::::
|
||||
.PHONY: kernel
|
||||
kernel:
|
||||
$(MAKE) build_dirs
|
||||
rm -rf build/logs/kernel-log.txt
|
||||
$(PRAWNOS_KERNEL_SCRIPTS_BUILD) $(KVER) 2>&1 | tee build/logs/kernel-log.txt
|
||||
#included from kernel/makefile
|
||||
|
||||
.PHONY: kernel_config
|
||||
kernel_config:
|
||||
$(PRAWNOS_KERNEL_SCRIPTS_MENUCONFIG) $(KVER)
|
||||
|
||||
.PHONY: patch_kernel
|
||||
patch_kernel:
|
||||
$(PRAWNOS_KERNEL_SCRIPTS_PATCH)
|
||||
|
||||
#:::::::::::::::::::::::::::::: initramfs :::::::::::::::::::::::::::::::::
|
||||
.PHONY: initramfs
|
||||
initramfs:
|
||||
$(MAKE) build_dirs
|
||||
rm -rf build/logs/initramfs-log.txt
|
||||
$(PRAWNOS_INITRAMFS_SCRIPTS_BUILD) $(BASE) 2>&1 | tee build/logs/initramfs-log.txt
|
||||
#included from initramfs/makefile
|
||||
|
||||
#:::::::::::::::::::::::::::::: filesystem ::::::::::::::::::::::::::::::::
|
||||
#makes the base filesystem image without kernel. Only make a new one if the base image isnt present
|
||||
@ -122,33 +69,33 @@ filesystem:
|
||||
$(MAKE) build_dirs
|
||||
rm -rf build/logs/fs-log.txt
|
||||
$(MAKE) pbuilder_create
|
||||
$(MAKE) packages
|
||||
[ -f $(BASE) ] || $(PRAWNOS_FILESYSTEM_SCRIPTS_BUILD) $(KVER) $(DEBIAN_SUITE) $(BASE) $(PRAWNOS_ROOT) $(PRAWNOS_SHARED_SCRIPTS) 2>&1 | tee build/logs/fs-log.txt
|
||||
$(MAKE) filesystem_packages
|
||||
[ -f $(PRAWNOS_IMAGE_BASE) ] || $(PRAWNOS_FILESYSTEM_SCRIPTS_BUILD) $(KVER) $(DEBIAN_SUITE) $(PRAWNOS_IMAGE_BASE) $(PRAWNOS_ROOT) $(PRAWNOS_SHARED_SCRIPTS) 2>&1 | tee build/logs/fs-log.txt
|
||||
|
||||
#:::::::::::::::::::::::::::::: packages ::::::::::::::::::::::::::::::::
|
||||
.PHONY: packages
|
||||
packages:
|
||||
cd packages && $(MAKE)
|
||||
.PHONY: filesystem_packages
|
||||
filesystem_packages:
|
||||
$(MAKE) filesystem_packages -C packages
|
||||
|
||||
.PHONY: packages_install
|
||||
packages_install:
|
||||
.PHONY: filesystem_packages_install
|
||||
filesystem_packages_install:
|
||||
ifndef INSTALL_TARGET
|
||||
$(error INSTALL_TARGET is not set)
|
||||
endif
|
||||
cd packages && $(MAKE) install INSTALL_TARGET=$(INSTALL_TARGET)
|
||||
$(MAKE) filesystem_packages_install INSTALL_TARGET=$(INSTALL_TARGET) -C filesystem
|
||||
|
||||
#:::::::::::::::::::::::::::::: image management ::::::::::::::::::::::::::
|
||||
|
||||
.PHONY: kernel_install
|
||||
kernel_inject: #Targets an already built .img and swaps the old kernel with the newly compiled kernel
|
||||
$(PRAWNOS_IMAGE_SCRIPTS_INSTALL_KERNEL) $(KVER) $(OUTNAME)
|
||||
$(PRAWNOS_IMAGE_SCRIPTS_INSTALL_KERNEL) $(KVER) $(PRAWNOS_IMAGE)
|
||||
|
||||
.PHONY: kernel_update
|
||||
kernel_update:
|
||||
$(MAKE) clean_img
|
||||
$(MAKE) initramfs
|
||||
$(MAKE) kernel
|
||||
cp $(BASE) $(OUTNAME)
|
||||
cp $(PRAWNOS_IMAGE_BASE) $(PRAWNOS_IMAGE)
|
||||
$(MAKE) kernel_install
|
||||
|
||||
.PHONY: image
|
||||
@ -157,7 +104,7 @@ image:
|
||||
$(MAKE) filesystem
|
||||
$(MAKE) initramfs
|
||||
$(MAKE) kernel
|
||||
cp $(BASE) $(OUTNAME)
|
||||
cp $(PRAWNOS_IMAGE_BASE) $(PRAWNOS_IMAGE)
|
||||
$(MAKE) kernel_install
|
||||
|
||||
#:::::::::::::::::::::::::::::: pbuilder management :::::::::::::::::::::::
|
||||
|
@ -1,13 +0,0 @@
|
||||
PRAWNOS_ROOT := $(shell git rev-parse --show-toplevel)
|
||||
include $(PRAWNOS_ROOT)/scripts/BuildScripts/BuildCommon.mk
|
||||
|
||||
all:
|
||||
@echo TODO
|
||||
|
||||
|
||||
clean:
|
||||
@echo TODO
|
||||
|
||||
|
||||
install:
|
||||
@echo TODO
|
@ -1,13 +0,0 @@
|
||||
PRAWNOS_ROOT := $(shell git rev-parse --show-toplevel)
|
||||
include $(PRAWNOS_ROOT)/scripts/common.mk
|
||||
|
||||
all:
|
||||
@echo TODO
|
||||
|
||||
|
||||
clean:
|
||||
@echo TODO
|
||||
|
||||
|
||||
install:
|
||||
@echo TODO
|
@ -1,22 +0,0 @@
|
||||
PRAWNOS_ROOT := $(shell git rev-parse --show-toplevel)
|
||||
include $(PRAWNOS_ROOT)/scripts/BuildScripts/BuildCommon.mk
|
||||
|
||||
SUBDIRS = $(shell ls -d */)
|
||||
|
||||
all:
|
||||
for dir in $(SUBDIRS) ; do \
|
||||
make -C $$dir ; \
|
||||
done
|
||||
|
||||
|
||||
clean:
|
||||
for dir in $(SUBDIRS) ; do \
|
||||
make clean -C $$dir ; \
|
||||
done
|
||||
|
||||
|
||||
install:
|
||||
$(info packages install target is $(INSTALL_TARGET))
|
||||
for dir in $(SUBDIRS) ; do \
|
||||
make install INSTALL_TARGET=$(INSTALL_TARGET) -C $$dir ; \
|
||||
done
|
@ -1,56 +0,0 @@
|
||||
## PrawnOS Packaging
|
||||
|
||||
All programs, themes, etc that are not part of upstream debian are built as packages
|
||||
this allows PrawnOS the following benefits:
|
||||
- the PrawnOS apt repo is not a build dependency
|
||||
- test builds don't require any special steps-- just make the change locally and rebuild the filesystem
|
||||
- a user doesn't have to trust the PrawnOS apt repo to build their own image
|
||||
- the PrawnOS apt repo requires less bandwidth, as only package updates will be gotten from it
|
||||
|
||||
Note that some packages that are available upstream, but only in unstable or testing repos or have
|
||||
fixes only in the unstable or testing repos are packaged as part of PrawnOS
|
||||
|
||||
### Updating Packages
|
||||
By using packages for all parts of PrawnOS, updates are more straightforward.
|
||||
When an existing PrawnOS install has out of date packages, the user can then either
|
||||
build the new version themselves or get the update from the repo using the standard "apt upgrade"
|
||||
|
||||
### Package folder structure
|
||||
Packages are stored under component of the final PrawnOS image they belong to
|
||||
Inside the package folder there are the following items:
|
||||
- `makefile`
|
||||
- source folder called `src`
|
||||
- a `.orig.tar.gz*` containing the package source.
|
||||
- a `.gitignore` to avoid commiting build artifacts, or unnecessary source files
|
||||
|
||||
The contents of the `src` are the following:
|
||||
- a `debian` folder
|
||||
- the source files if the package is not packages upstream (by debian)
|
||||
- the patched source files if there are any PrawnOS specific patches. This is to keep the changes tracked by git.
|
||||
|
||||
If the source is from an upstream package, and no PrawnOS specific patches are carried then only the `debian` folder is in the `src` folder
|
||||
|
||||
### Building packages
|
||||
Most packages are built in a host architecture agnostic fashion using pbuilder.
|
||||
The only notable exceptions to this are font packages, which are not architecture dependent and
|
||||
the kernel package, which handles cross compilation manually without a chroot.
|
||||
|
||||
To build any package, navigate to that packages folder and run
|
||||
```
|
||||
make clean
|
||||
make
|
||||
```
|
||||
the resulting .deb will be in that same folder when the build is complete
|
||||
|
||||
All packages can be built by running
|
||||
```
|
||||
make
|
||||
```
|
||||
from the packages directory
|
||||
|
||||
### Uploading packages
|
||||
New packages, and package updates can upload to `deb.prawnos.com` by maintainers
|
||||
first by building and then running
|
||||
```
|
||||
make upload
|
||||
```
|
@ -1,142 +0,0 @@
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v1.4.9 (GNU/Linux)
|
||||
|
||||
mQGiBEh9qqURBACKo3J5VyGBgApcm4QddrLyoS3Sxt+aUX1CQ5t8X8Ue2tXypHOR
|
||||
jzXRyKiBeAc/yIuLStyE05P0DVQTe6fXZyDIGZbw8Gc6kdzT+wtWmQHQbPLcXV3s
|
||||
T/7ZDbRg2ShmSleJUNgWABLIKNk8iKGfgMKrzHiUeeLKzr6elf+hYYNMfwCgrQal
|
||||
gQ/DPIlVjjmJvdnZOYN8ZC0D/3JEoAOFRFtmkufS5q17JMjL0XjDL7HANJc1/hQo
|
||||
Ap6OckhX6T7o2Pn1QJIJoQAR3fjIqYX/QQn6y+S2PrRtrX0fRqHNGHY/QyjWgdfq
|
||||
I7lw6H7a7a77O2sD0MfkLWqAU6PQp8xYEQFDwdDXgggmFUEhikWWbNJU/pNialhY
|
||||
hNypA/wPCAkz47/36RYPL79nZY/p6iCW+tfUtrM5RmkTZ5lqVKxaWv96WppHwoyp
|
||||
MWk66gkm/EK58zKZASpvh1a5nQ2niWHcazn2TfRfgBgBfFiyaHNgzb6eDwWcIMHF
|
||||
VglngbUL5hwmBkWVkg2GxSkMk26OCFhrxF59Ibmkf2YxQBXem7Q9bGludXgtbGli
|
||||
cmUgKEFsZXhhbmRyZSBPbGl2YSkgPGxpbnV4LWxpYnJlK2x4b2xpdmFAZnNmbGEu
|
||||
b3JnPohgBBMRAgAgBQJIfaqlAhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQ
|
||||
vLfPh359R6cNtACdF9Ff6ykp7UQxKkbIiCPkfaVd7+YAoIPqTHUhRFK9i82ROj68
|
||||
LH1xnzZxiEYEEBECAAYFAkh9rNYACgkQUjSEXfK5IPXoKgCcD5YlHa+OfVKbKRLf
|
||||
xaNHec7H5UAAoL2T964cyDQz8yyyqguEl1hjBCRviF4EEBEIAAYFAkwJhYAACgkQ
|
||||
Ir13u1gr1/CkrwD/SI3ilyOPdcy3kzEbv/D4J8Rj9lltWyD8WDqC7ZMFCokBAM3s
|
||||
//ZcZ/FttS/AYdL/xLgBKFBAkDY/U/yrIzt2SgGj0dTa1NgBEAABAQAAAAAAAAAA
|
||||
AAAAAP/Y/+AAEEpGSUYAAQECACMAIwAA/9sAQwAoHB4jHhkoIyEjLSsoMDxkQTw3
|
||||
Nzx7WF1JZJGAmZaPgIyKoLTmw6Cq2q2KjMj/y9ru9f///5vB////+v/m/f/4/9sA
|
||||
QwErLS08NTx2QUF2+KWMpfj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4
|
||||
+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4/8AAEQgBGAEEAwEiAAIRAQMRAf/EABoAAQEBAQEB
|
||||
AQAAAAAAAAAAAAAFBAMCBgH/xABCEAABAwIDBAcGBAIIBwAAAAABAAIDBBEFEiET
|
||||
MUFRImFxkaGxwRQjMkKB0RVS4fAkNFNkc4KSoqPxBjM1RVRysv/EABgBAQEBAQEA
|
||||
AAAAAAAAAAAAAAACAwEE/8QAIREBAQACAgMAAgMAAAAAAAAAAAECESExAxJBIlET
|
||||
QnH/2gAMAwEAAhEDEQA/ALKIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICI
|
||||
iAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiIgIiICIiAiI
|
||||
gIiICIiAiIgIiICIiAiIgIiICIiAiIgIuVTUxUsZfK8DTQcT2BQ5q2rxF5jhBZHb
|
||||
VrT5lBanraanNpZmtN7W3kfQLl+LUX9P/kd9lNiwgWvNIb8m/daBhlKB8Lj/AHlX
|
||||
rXPaNkeJUcjrNnaDa/Su3zWppDmhzSCCLgjiosmEwuHQe5p69Qs2Stw5wexxMYNz
|
||||
YktPaFyyw3H0aLBh+JsrDs3gMlA3X0d2fZb1x0REQEREBERAREQEREBERAREQERc
|
||||
aqqhpGZpnWvuA1JQdl4lmjgYXyvDG8yVNkx2EN93DI433OsPuplbVvr5w7IWgCzW
|
||||
A3QUpMeiFtlC93PMQ37rx+P/ANW/1P0U5myYQyogc2/zAkHuK9lpo5GvFpYH8xoR
|
||||
91zbul2ir4q1pyXa8DVh9OYWpfNTxGnLKukcQw6gj5SrtBVe2UrZbAOvZwHApLss
|
||||
00IiLrguc8zKeF0sl8rRrZdFEx2cvljpmWIHSNjxO4fvmgyxsmxOqdJK7QbzwA5B
|
||||
WIomQsDI2hoC800Ip4GxjhvPMrzXSmGkke3faw+q0k0i3bo2WNzyxsjS4bwDqvai
|
||||
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
|
||||
l5NgA0LRHhFXO7NUPDOBzHMf39VtjMp2zysvS+0hzQ5pBBFwRxReYoxFEyNtyGND
|
||||
RfqXpWkREQEREBERAREQEREBERAREQFyqwXUc7WgkmNwAHHRdUQfNQe3U7C2Onks
|
||||
TfWMrxNVVrXZZS+MnUAtyr6hQccOXEIiRcBgPiVz1nbu63xZtkzafHYX7Vmq65lO
|
||||
C1tnScuXasjqypq37KnYRf8ALqe/gtlDgwaRJVWc69wwG4+vP971lj4/tXc/0zUF
|
||||
DJXy+0VBOyv/AIuodS+gaA1oa0AACwA4Ii2ZiIiAuNXTNq6d0Tja+oNr2K7Ig+co
|
||||
53Uc7qecFovrf5T9lWXnEsO9sAexwbK0W13EKVBWS0bzBOwkNNrcQss8N8xeOWuK
|
||||
711dJBUBkeWwFzcb1+x4rER7xjmnq1C40QNbizZCDlac+nADd42ViTDaOR13QNBt
|
||||
bo3b5Ls8c1ye12kUL2yY217PhcXEf4SvoVkpsNp6WZ0sYJcd2Y3y9i1rSIEREBER
|
||||
AREQEREBERAREQEREBERAREQFzlginAEsbX2Nxcbl0RB5jjjibljY1gvezRZekRA
|
||||
REQEREBERAXOenhqW5Zow8cL7x9V0RByp6WGlaRDGGhxudb3XVEQEREBERAREQER
|
||||
EBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBER
|
||||
AREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQEREBERAREQf/2YhgBBMR
|
||||
AgAgBQJMCX7tAhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQvLfPh359R6dA
|
||||
rgCgm6oaTjZw81cHYJCDbRqmgvPnVwUAmgORBOiTA8uJEZjLnW4nCuwr5hPiiEYE
|
||||
EBECAAYFAkwJf6IACgkQUjSEXfK5IPUN9ACeIxFILNIr1mgEVvssa9hPiS4rytMA
|
||||
oMCEApLI1XtbOqg/CkaB1lj/Fqq0iF4EEBEIAAYFAkwJhYAACgkQIr13u1gr1/DP
|
||||
NwD/fBDFJ9RDH/0OnfX7TQtMajowS07v8ZhMZGS8RiG0wxUBAMpk4sBenTzlKVG3
|
||||
7+1hts8o+2910W8DnrfsUKZTMKP6
|
||||
=JkKR
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
@ -3,10 +3,38 @@ BUILD_COMMON_MK := 1
|
||||
|
||||
#Place all shared make vars below
|
||||
#=========================================================================================
|
||||
### MISC GLOBALS
|
||||
KVER=5.4.29
|
||||
# Otherwise errors are ignored when output is piped to tee:
|
||||
SHELL := /bin/bash -o pipefail
|
||||
|
||||
### PRAWNOS CORE DIRECTORIES
|
||||
PRAWNOS_BUILD := $(PRAWNOS_ROOT)/build
|
||||
|
||||
PRAWNOS_SCRIPTS := $(PRAWNOS_ROOT)/scripts
|
||||
|
||||
PRAWNOS_KERNEL := $(PRAWNOS_ROOT)/kernel
|
||||
|
||||
PRAWNOS_INITRAMFS := $(PRAWNOS_ROOT)/initramfs
|
||||
|
||||
PRAWNOS_FILESYSTEM := $(PRAWNOS_ROOT)/filesystem
|
||||
|
||||
### BUILD DIRS
|
||||
|
||||
PRAWNOS_BUILD_LOGS := $(PRAWNOS_BUILD)/logs
|
||||
PRAWNOS_BUILD_APT_CACHE := $(PRAWNOS_BUILD)/apt-cache
|
||||
|
||||
### PRAWNOS IMAGES
|
||||
ifeq ($(DEBIAN_SUITE),)
|
||||
DEBIAN_SUITE := buster
|
||||
endif
|
||||
ifeq ($(PRAWNOS_SUITE),)
|
||||
PRAWNOS_SUITE := Shiba
|
||||
endif
|
||||
|
||||
PRAWNOS_IMAGE := PrawnOS-$(PRAWNOS_SUITE)-c201.img
|
||||
PRAWNOS_IMAGE_BASE := $(OUTNAME)-BASE
|
||||
|
||||
### BUILD SCRIPTS
|
||||
PRAWNOS_BUILD_SCRIPTS := $(PRAWNOS_SCRIPTS)/BuildScripts
|
||||
|
||||
@ -17,6 +45,7 @@ PRAWNOS_KERNEL_SCRIPTS := $(PRAWNOS_BUILD_SCRIPTS)/KernelScripts
|
||||
PRAWNOS_KERNEL_SCRIPTS_BUILD := $(PRAWNOS_KERNEL_SCRIPTS)/buildKernel.sh
|
||||
PRAWNOS_KERNEL_SCRIPTS_MENUCONFIG := $(PRAWNOS_KERNEL_SCRIPTS)/crossMenuConfig.sh
|
||||
PRAWNOS_KERNEL_SCRIPTS_PATCH := $(PRAWNOS_KERNEL_SCRIPTS)/patchKernel.sh
|
||||
PRAWNOS_KERNEL_SCRIPTS_BUILD_ATH9K := $(PRAWNOS_KERNEL_SCRIPTS)/buildAth9k.sh
|
||||
|
||||
PRAWNOS_IMAGE_SCRIPTS := $(PRAWNOS_BUILD_SCRIPTS)/ImageScripts
|
||||
PRAWNOS_IMAGE_SCRIPTS_INSTALL_KERNEL := $(PRAWNOS_IMAGE_SCRIPTS)/installKernelToFs.sh
|
||||
@ -29,11 +58,9 @@ PRAWNOS_PACKAGE_SCRIPTS_INSTALL := $(PRAWNOS_PACKAGE_SCRIPTS)/installPackage.sh
|
||||
PRAWNOS_PACKAGE_SCRIPTS_PBUILD := $(PRAWNOS_PACKAGE_SCRIPTS)/pbuildPackage.sh
|
||||
PRAWNOS_PACKAGE_SCRIPTS_UPLOAD := $(PRAWNOS_PACKAGE_SCRIPTS)/uploadPackage.sh
|
||||
|
||||
|
||||
### INSTALL SCRIPTS
|
||||
PRAWNOS_INSTALL_SCRIPTS := $(PRAWNOS_SCRIPTS)/InstallScripts
|
||||
|
||||
|
||||
### SHARED SCRIPTS
|
||||
PRAWNOS_SHARED_SCRIPTS := $(PRAWNOS_SCRIPTS)/Shared
|
||||
|
||||
@ -47,16 +74,34 @@ PBUILDER_HOOKS := $(PBUILDER_DIR)/hooks
|
||||
|
||||
PBUILDER_VARS := $(PBUILDER_CHROOT) $(PBUILDER_RC) $(PBUILDER_HOOKS)
|
||||
|
||||
|
||||
### LOCAL APT RESOURCES
|
||||
PRAWNOS_LOCAL_APT_REPO := $(PRAWNOS_BUILD)/prawnos-local-apt-repo
|
||||
PRAWNOS_LOCAL_APT_SOURCE := "deb [trusted=yes] file://$(PRAWNOS_LOCAL_APT_REPO) ./"
|
||||
|
||||
PRAWNOS_LOCAL_APT_VARS := $(PRAWNOS_LOCAL_APT_REPO) $(PRAWNOS_LOCAL_APT_SOURCE)
|
||||
|
||||
### MISC GLOBALS
|
||||
# Otherwise errors are ignored when output is piped to tee:
|
||||
SHELL := /bin/bash -o pipefail
|
||||
### KERNEL
|
||||
PRAWNOS_KERNEL_BUILD := $(PRAWNOS_BUILD)/linux-$(KVER)
|
||||
|
||||
### INITRAMFS
|
||||
PRAWNOS_INITRAMFS_IMAGE := $(PRAWNOS_BUILD)/PrawnOS-initramfs.cpio.gz
|
||||
|
||||
### ATH9K
|
||||
PRAWNOS_ATH9K_BUILD := $(PRAWNOS_BUILD)/open-ath9k-htc-firmware
|
||||
|
||||
#=========================================================================================
|
||||
|
||||
|
||||
#Place all shared make rules below
|
||||
#=========================================================================================
|
||||
$(PRAWNOS_BUILD): $(PRAWNOS_BUILD_LOGS) $(PRAWNOS_BUILD_APT_CACHE)
|
||||
|
||||
$(PRAWNOS_BUILD_LOGS):
|
||||
mkdir -p $(PRAWNOS_BUILD_LOGS)
|
||||
|
||||
$(PRAWNOS_BUILD_APT_CACHE):
|
||||
mkdir -p $(PRAWNOS_BUILD_APT_CACHE)
|
||||
|
||||
#=========================================================================================
|
||||
|
||||
endif # BUILD_COMMON_MK
|
||||
|
@ -22,18 +22,29 @@ set -e
|
||||
# along with PrawnOS. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
|
||||
outmnt=$(mktemp -d -p "$(pwd)")
|
||||
outdev=/dev/loop7
|
||||
if [ -z "$1" ]
|
||||
then
|
||||
echo "No base file system image filename supplied"
|
||||
echo "No base file system image supplied"
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "$2" ]
|
||||
then
|
||||
echo "No initramfs resources dir supplied"
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "$3" ]
|
||||
then
|
||||
echo "No output location supplied"
|
||||
exit 1
|
||||
fi
|
||||
BASE=$1
|
||||
ROOT_DIR="$(pwd)"
|
||||
build_resources=$ROOT_DIR/resources/BuildResources
|
||||
RESOURCES=$2
|
||||
OUT_DIR=$3
|
||||
|
||||
if [ ! -f $ROOT_DIR/$BASE ]
|
||||
outmnt=$(mktemp -d -p "$(pwd)")
|
||||
outdev=/dev/loop7
|
||||
|
||||
if [ ! -f $BASE ]
|
||||
then
|
||||
echo "No base filesystem, run 'make filesystem' first"
|
||||
exit 1
|
||||
@ -59,7 +70,7 @@ trap cleanup INT TERM EXIT
|
||||
|
||||
[ ! -d build ] && mkdir build
|
||||
|
||||
losetup -P $outdev $ROOT_DIR/$BASE
|
||||
losetup -P $outdev $$BASE
|
||||
#mount the root filesystem
|
||||
mount -o noatime ${outdev}p2 $outmnt
|
||||
|
||||
@ -113,7 +124,7 @@ cp $outmnt/lib/arm-linux-gnueabihf/libpthread.so.0 $initramfs_src/lib/arm-linux-
|
||||
cp $outmnt/lib/arm-linux-gnueabihf/libpcre.so.3 $initramfs_src/lib/arm-linux-gnueabihf/libpcre.so.3
|
||||
cp $outmnt/lib/arm-linux-gnueabihf/libgcc_s.so.1 $initramfs_src/lib/arm-linux-gnueabihf/libgcc_s.so.1
|
||||
#add the init script
|
||||
cp $build_resources/initramfs-init $initramfs_src/init
|
||||
cp $RESOURCES/initramfs-init $initramfs_src/init
|
||||
chmod +x $initramfs_src/init
|
||||
cp $initramfs_src/init $initramfs_src/sbin/init
|
||||
|
||||
@ -127,5 +138,5 @@ ln -s busybox bin/switch_root
|
||||
ln -s busybox bin/umount
|
||||
|
||||
# store for kernel building
|
||||
find . -print0 | cpio --null --create --verbose --format=newc | gzip --best > $ROOT_DIR/build/PrawnOS-initramfs.cpio.gz
|
||||
find . -print0 | cpio --null --create --verbose --format=newc | gzip --best > $OUT_DIR/PrawnOS-initramfs.cpio.gz
|
||||
|
||||
|
34
scripts/BuildScripts/KernelScripts/buildAth9k.sh
Executable file
34
scripts/BuildScripts/KernelScripts/buildAth9k.sh
Executable file
@ -0,0 +1,34 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -x
|
||||
set -e
|
||||
|
||||
# build AR9271 firmware
|
||||
|
||||
# This file is part of PrawnOS (https://www.prawnos.com)
|
||||
# Copyright (c) 2020 Hal Emmerich <hal@halemmerich.com>
|
||||
|
||||
# PrawnOS is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License version 2
|
||||
# as published by the Free Software Foundation.
|
||||
|
||||
# PrawnOS is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with PrawnOS. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
|
||||
if [ -z "$1" ]
|
||||
then
|
||||
echo "No build directory supplied"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
BUILD_DIR=$1
|
||||
|
||||
cd $BUILD_DIR
|
||||
make toolchain
|
||||
make -C target_firmware
|
@ -3,11 +3,11 @@
|
||||
set -x
|
||||
set -e
|
||||
|
||||
#Build kernel, wifi firmware
|
||||
# build Linux-libre, with ath9k_htc firmware and initramfs built in
|
||||
|
||||
|
||||
# This file is part of PrawnOS (https://www.prawnos.com)
|
||||
# Copyright (c) 2018 Hal Emmerich <hal@halemmerich.com>
|
||||
# Copyright (c) 2018-2020 Hal Emmerich <hal@halemmerich.com>
|
||||
|
||||
# PrawnOS is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License version 2
|
||||
@ -26,48 +26,35 @@ then
|
||||
echo "No kernel version supplied"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
KVER=$1
|
||||
ROOT_DIR="$(pwd)"
|
||||
RESOURCES=$ROOT_DIR/resources/BuildResources
|
||||
|
||||
[ ! -d build ] && mkdir build
|
||||
cd build
|
||||
if [ ! -f PrawnOS-initramfs.cpio.gz ]
|
||||
if [ -z "$2" ]
|
||||
then
|
||||
echo "No initramfs image, run 'make initramfs' first"
|
||||
cd $ROOT_DIR
|
||||
echo "No resources directory"
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "$3" ]
|
||||
then
|
||||
echo "No build directory supplied"
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "$4" ]
|
||||
then
|
||||
echo "No PrawnOS initramfs supplied"
|
||||
exit 1
|
||||
fi
|
||||
# build AR9271 firmware
|
||||
[ ! -d open-ath9k-htc-firmware ] && git clone --depth 1 https://github.com/qca/open-ath9k-htc-firmware.git
|
||||
cd open-ath9k-htc-firmware
|
||||
make toolchain
|
||||
make -C target_firmware
|
||||
cd ..
|
||||
|
||||
# build Linux-libre, with ath9k_htc
|
||||
[ ! -f linux-libre-$KVER-gnu.tar.lz ] && wget https://www.linux-libre.fsfla.org/pub/linux-libre/releases/$KVER-gnu/linux-libre-$KVER-gnu.tar.lz
|
||||
[ ! -f linux-libre-$KVER-gnu.tar.lz.sign ] && wget https://www.linux-libre.fsfla.org/pub/linux-libre/releases/$KVER-gnu/linux-libre-$KVER-gnu.tar.lz.sign
|
||||
KVER=$1
|
||||
RESOURCES=$2
|
||||
BUILD_DIR=$3
|
||||
INITRAMFS=$4
|
||||
|
||||
#verify the signature
|
||||
gpg --import $RESOURCES/linux-libre-signing-key.gpg
|
||||
gpg --verify linux-libre-$KVER-gnu.tar.lz.sign linux-libre-$KVER-gnu.tar.lz
|
||||
|
||||
[ ! -d linux-$KVER ] && tar --lzip -xvf linux-libre-$KVER-gnu.tar.lz && FRESH=true
|
||||
cd linux-$KVER
|
||||
make clean
|
||||
cd $BUILD_DIR
|
||||
make mrproper
|
||||
#Apply the usb and mmc patches if unapplied
|
||||
[ "$FRESH" = true ] && for i in "$RESOURCES"/patches-tested/kernel/5.x-dwc2/*.patch; do echo $i; patch -p1 < $i; done
|
||||
[ "$FRESH" = true ] && for i in "$RESOURCES"/patches-tested/DTS/*.patch; do echo $i; patch -p1 < $i; done
|
||||
[ "$FRESH" = true ] && for i in "$RESOURCES"/patches-tested/kernel/*.patch; do echo $i; patch -p1 < $i; done
|
||||
|
||||
#copy in the initramfs and kernel config
|
||||
cp $ROOT_DIR/build/PrawnOS-initramfs.cpio.gz .
|
||||
#copy in the resources, initramfs
|
||||
cp $INITRAMFS .
|
||||
cp $RESOURCES/config .config
|
||||
cp $RESOURCES/kernel.its .
|
||||
make -j $(($(nproc) +1)) CROSS_COMPILE=arm-none-eabi- ARCH=arm zImage modules dtbs
|
||||
[ ! -h kernel.its ] && ln -s $RESOURCES/kernel.its .
|
||||
mkimage -D "-I dts -O dtb -p 2048" -f kernel.its vmlinux.uimg
|
||||
dd if=/dev/zero of=bootloader.bin bs=512 count=1
|
||||
vbutil_kernel --pack vmlinux.kpart \
|
||||
@ -78,5 +65,8 @@ vbutil_kernel --pack vmlinux.kpart \
|
||||
--signprivate /usr/share/vboot/devkeys/kernel_data_key.vbprivk \
|
||||
--config $RESOURCES/cmdline \
|
||||
--bootloader bootloader.bin
|
||||
cd ..
|
||||
cd $ROOT_DIR
|
||||
|
||||
RESULT=$?
|
||||
if [ ! $RESULT -eq 0 ]; then
|
||||
rm -f vmlinux.kpart
|
||||
fi
|
||||
|
@ -8,20 +8,22 @@ then
|
||||
echo "No kernel version supplied"
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "$2" ]
|
||||
then
|
||||
echo "No patches directory"
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "$3" ]
|
||||
then
|
||||
echo "No build directory supplied"
|
||||
exit 1
|
||||
fi
|
||||
KVER=$1
|
||||
PATCHES=$2
|
||||
BUILD_DIR=$3
|
||||
|
||||
ROOT_DIR="$(pwd)"
|
||||
RESOURCES=$ROOT_DIR/resources/BuildResources
|
||||
|
||||
|
||||
[ ! -d build ] && mkdir build
|
||||
cd build
|
||||
# build Linux-libre, with ath9k_htc
|
||||
cd linux-$KVER
|
||||
make clean
|
||||
cd $BUILD_DIR
|
||||
make mrproper
|
||||
#Apply the usb and mmc patches if unapplied
|
||||
for i in "$RESOURCES"/patches-tested/DTS/*.patch; do patch -p1 < $i; done
|
||||
for i in "$RESOURCES"/patches-tested/kernel/*.patch; do patch -p1 < $i; done
|
||||
|
||||
cd $ROOT_DIR
|
||||
#Apply the usb and mmc patches
|
||||
for i in "$PATCHES"/DTS/*.patch; do echo $i; patch -p1 < $i; done
|
||||
for i in "$PATCHES"/kernel/*.patch; do echo $i; patch -p1 < $i; done
|
||||
|
Loading…
Reference in New Issue
Block a user