diff --git a/.gitignore b/.gitignore index 2a9ab6a..8331687 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,3 @@ -linux-* -open-ath9k-htc-firmware -PrawnOS-Alpha-c201-libre-2GB* PrawnOS-*-Alpha-c201-libre-2GB* tmp.* PrawnOS-Alpha-c201-libre-2GB-git*.img diff --git a/filesystem/makefile b/filesystem/makefile new file mode 100644 index 0000000..db59c62 --- /dev/null +++ b/filesystem/makefile @@ -0,0 +1,63 @@ +ifndef FILESYSTEM_MK +FILESYSTEM_MK := 1 +ifndef PRAWNOS_ROOT +PRAWNOS_ROOT := $(shell git rev-parse --show-toplevel) +endif +include $(PRAWNOS_ROOT)/scripts/BuildScripts/BuildCommon.mk + +FS_BUILD_LOG := $(PRAWNOS_BUILD_LOGS)/fs-log.txt + +PRAWNOS_FILESYSTEM_PACKAGES := $(PRAWNOS_FILESYSTEM)/packages + +PACKAGES_BUILT := $(PRAWNOS_FILESYSTEM_PACKAGES)/.packages_built + +.PHONY: filesystem \ + pbuilder_create \ + pbuilder_update \ + filesystem_packages \ + filesystem_packages_clean \ + filesystem_packages_install + +### Filesystem Image + +filesystem: $(PRAWNOS_IMAGE_BASE) + +### Packages + +filesystem_packages: $(PRAWNOS_BUILD) + +filesystem_packages_clean: + $(MAKE) -C $(PRAWNOS_FILESYSTEM_PACKAGES) clean + rm -f $(PRAWNOS_PACKAGES_BUILT) + +filesystem_packages_install: +ifndef INSTALL_TARGET + $(error INSTALL_TARGET is not set) +endif + $(MAKE) -C $(PRAWNOS_FILESYSTEM_PACKAGES) INSTALL_TARGET=$(INSTALL_TARGET) install + +### Pbuilder + +pbuilder_create: $(PBUILDER_CHROOT) + +#TODO: should only update if not updated for a day +pbuilder_update: $(PBUILDER_CHROOT) + @echo UPDATING $(PBUILDER_CHROOT) + pbuilder update --basetgz $(PBUILDER_CHROOT) --configfile $(PBUILDER_RC) + +### REAL TARGETS + +$(PACKAGES_BUILT): $(PRAWNOS_BUILD) $(PBUILDER_CHROOT) + $(MAKE) -C $(PRAWNOS_FILESYSTEM_PACKAGES) all + touch $(PACKAGES_BUILT) + +$(PBUILDER_CHROOT): $(PRAWNOS_BUILD) + @echo BUILDING $(PBUILDER_CHROOT) + pbuilder create --basetgz $(PBUILDER_CHROOT) --configfile $(PBUILDER_RC) + +$(PRAWNOS_IMAGE_BASE): $(PRAWNOS_BUILD) $(PACKAGES_BUILT) + rm -rf $(FS_BUILD_LOG) + $(PRAWNOS_FILESYSTEM_SCRIPTS_BUILD) $(KVER) $(DEBIAN_SUITE) $(PRAWNOS_IMAGE_BASE) $(PRAWNOS_ROOT) $(PRAWNOS_SHARED_SCRIPTS) $(PRAWNOS_FILESYSTEM_RESOURCES) 2>&1 | tee $(FS_BUILD_LOG) + + +endif diff --git a/filesystem/packages/.gitignore b/filesystem/packages/.gitignore new file mode 100644 index 0000000..aad6751 --- /dev/null +++ b/filesystem/packages/.gitignore @@ -0,0 +1 @@ +.packages_built diff --git a/packages/filesystem/flashmap/.gitignore b/filesystem/packages/flashmap/.gitignore similarity index 100% rename from packages/filesystem/flashmap/.gitignore rename to filesystem/packages/flashmap/.gitignore diff --git a/packages/filesystem/flashmap/flashmap_0.3.orig.tar.gz b/filesystem/packages/flashmap/flashmap_0.3.orig.tar.gz similarity index 100% rename from packages/filesystem/flashmap/flashmap_0.3.orig.tar.gz rename to filesystem/packages/flashmap/flashmap_0.3.orig.tar.gz diff --git a/packages/filesystem/flashmap/makefile b/filesystem/packages/flashmap/makefile similarity index 94% rename from packages/filesystem/flashmap/makefile rename to filesystem/packages/flashmap/makefile index 9d1b3d9..0796fd5 100644 --- a/packages/filesystem/flashmap/makefile +++ b/filesystem/packages/flashmap/makefile @@ -1,3 +1,4 @@ +.DEFAULT_GOAL := default #import all shared make vars PRAWNOS_ROOT := $(shell git rev-parse --show-toplevel) include $(PRAWNOS_ROOT)/scripts/BuildScripts/BuildCommon.mk @@ -9,6 +10,9 @@ PACKAGE_NAME_DEB := $(PACKAGE_NAME).deb PACKAGE_LOCAL_BUILD_DEPS := + +default: $(PACKAGE_NAME_DEB) + $(PACKAGE_NAME_DEB): $(PRAWNOS_PACKAGE_SCRIPTS_PBUILD) $(PACKAGE_NAME_DEB) \ $(PBUILDER_VARS) \ diff --git a/packages/filesystem/flashmap/src/debian/changelog b/filesystem/packages/flashmap/src/debian/changelog similarity index 100% rename from packages/filesystem/flashmap/src/debian/changelog rename to filesystem/packages/flashmap/src/debian/changelog diff --git a/packages/filesystem/flashmap/src/debian/compat b/filesystem/packages/flashmap/src/debian/compat similarity index 100% rename from packages/filesystem/flashmap/src/debian/compat rename to filesystem/packages/flashmap/src/debian/compat diff --git a/packages/filesystem/flashmap/src/debian/control b/filesystem/packages/flashmap/src/debian/control similarity index 100% rename from packages/filesystem/flashmap/src/debian/control rename to filesystem/packages/flashmap/src/debian/control diff --git a/packages/filesystem/flashmap/src/debian/copyright b/filesystem/packages/flashmap/src/debian/copyright similarity index 100% rename from packages/filesystem/flashmap/src/debian/copyright rename to filesystem/packages/flashmap/src/debian/copyright diff --git a/packages/filesystem/flashmap/src/debian/rules b/filesystem/packages/flashmap/src/debian/rules similarity index 100% rename from packages/filesystem/flashmap/src/debian/rules rename to filesystem/packages/flashmap/src/debian/rules diff --git a/packages/filesystem/font-source-code-pro/.gitignore b/filesystem/packages/font-source-code-pro/.gitignore similarity index 100% rename from packages/filesystem/font-source-code-pro/.gitignore rename to filesystem/packages/font-source-code-pro/.gitignore diff --git a/packages/filesystem/font-source-code-pro/font-source-code-pro_1.010.orig.tar.gz b/filesystem/packages/font-source-code-pro/font-source-code-pro_1.010.orig.tar.gz similarity index 100% rename from packages/filesystem/font-source-code-pro/font-source-code-pro_1.010.orig.tar.gz rename to filesystem/packages/font-source-code-pro/font-source-code-pro_1.010.orig.tar.gz diff --git a/packages/filesystem/font-source-code-pro/makefile b/filesystem/packages/font-source-code-pro/makefile similarity index 93% rename from packages/filesystem/font-source-code-pro/makefile rename to filesystem/packages/font-source-code-pro/makefile index eda57e8..ed6833b 100644 --- a/packages/filesystem/font-source-code-pro/makefile +++ b/filesystem/packages/font-source-code-pro/makefile @@ -1,3 +1,4 @@ +.DEFAULT_GOAL := default #import all shared make vars PRAWNOS_ROOT := $(shell git rev-parse --show-toplevel) include $(PRAWNOS_ROOT)/scripts/BuildScripts/BuildCommon.mk @@ -7,6 +8,8 @@ VERSION := $(shell cd src/; dpkg-parsechangelog --show-field Version) PACKAGE_NAME := font-source-code-pro_$(VERSION)_all PACKAGE_NAME_DEB := $(PACKAGE_NAME).deb +default: $(PACKAGE_NAME_DEB) + $(PACKAGE_NAME_DEB): @echo Building $@ cd src/; debuild -us -uc diff --git a/packages/filesystem/font-source-code-pro/src/SourceCodePro-Black.ttf b/filesystem/packages/font-source-code-pro/src/SourceCodePro-Black.ttf similarity index 100% rename from packages/filesystem/font-source-code-pro/src/SourceCodePro-Black.ttf rename to filesystem/packages/font-source-code-pro/src/SourceCodePro-Black.ttf diff --git a/packages/filesystem/font-source-code-pro/src/SourceCodePro-BlackIt.ttf b/filesystem/packages/font-source-code-pro/src/SourceCodePro-BlackIt.ttf similarity index 100% rename from packages/filesystem/font-source-code-pro/src/SourceCodePro-BlackIt.ttf rename to filesystem/packages/font-source-code-pro/src/SourceCodePro-BlackIt.ttf diff --git a/packages/filesystem/font-source-code-pro/src/SourceCodePro-Bold.ttf b/filesystem/packages/font-source-code-pro/src/SourceCodePro-Bold.ttf similarity index 100% rename from packages/filesystem/font-source-code-pro/src/SourceCodePro-Bold.ttf rename to filesystem/packages/font-source-code-pro/src/SourceCodePro-Bold.ttf diff --git a/packages/filesystem/font-source-code-pro/src/SourceCodePro-BoldIt.ttf b/filesystem/packages/font-source-code-pro/src/SourceCodePro-BoldIt.ttf similarity index 100% rename from packages/filesystem/font-source-code-pro/src/SourceCodePro-BoldIt.ttf rename to filesystem/packages/font-source-code-pro/src/SourceCodePro-BoldIt.ttf diff --git a/packages/filesystem/font-source-code-pro/src/SourceCodePro-ExtraLight.ttf b/filesystem/packages/font-source-code-pro/src/SourceCodePro-ExtraLight.ttf similarity index 100% rename from packages/filesystem/font-source-code-pro/src/SourceCodePro-ExtraLight.ttf rename to filesystem/packages/font-source-code-pro/src/SourceCodePro-ExtraLight.ttf diff --git a/packages/filesystem/font-source-code-pro/src/SourceCodePro-ExtraLightIt.ttf b/filesystem/packages/font-source-code-pro/src/SourceCodePro-ExtraLightIt.ttf similarity index 100% rename from packages/filesystem/font-source-code-pro/src/SourceCodePro-ExtraLightIt.ttf rename to filesystem/packages/font-source-code-pro/src/SourceCodePro-ExtraLightIt.ttf diff --git a/packages/filesystem/font-source-code-pro/src/SourceCodePro-It.ttf b/filesystem/packages/font-source-code-pro/src/SourceCodePro-It.ttf similarity index 100% rename from packages/filesystem/font-source-code-pro/src/SourceCodePro-It.ttf rename to filesystem/packages/font-source-code-pro/src/SourceCodePro-It.ttf diff --git a/packages/filesystem/font-source-code-pro/src/SourceCodePro-Light.ttf b/filesystem/packages/font-source-code-pro/src/SourceCodePro-Light.ttf similarity index 100% rename from packages/filesystem/font-source-code-pro/src/SourceCodePro-Light.ttf rename to filesystem/packages/font-source-code-pro/src/SourceCodePro-Light.ttf diff --git a/packages/filesystem/font-source-code-pro/src/SourceCodePro-LightIt.ttf b/filesystem/packages/font-source-code-pro/src/SourceCodePro-LightIt.ttf similarity index 100% rename from packages/filesystem/font-source-code-pro/src/SourceCodePro-LightIt.ttf rename to filesystem/packages/font-source-code-pro/src/SourceCodePro-LightIt.ttf diff --git a/packages/filesystem/font-source-code-pro/src/SourceCodePro-Medium.ttf b/filesystem/packages/font-source-code-pro/src/SourceCodePro-Medium.ttf similarity index 100% rename from packages/filesystem/font-source-code-pro/src/SourceCodePro-Medium.ttf rename to filesystem/packages/font-source-code-pro/src/SourceCodePro-Medium.ttf diff --git a/packages/filesystem/font-source-code-pro/src/SourceCodePro-MediumIt.ttf b/filesystem/packages/font-source-code-pro/src/SourceCodePro-MediumIt.ttf similarity index 100% rename from packages/filesystem/font-source-code-pro/src/SourceCodePro-MediumIt.ttf rename to filesystem/packages/font-source-code-pro/src/SourceCodePro-MediumIt.ttf diff --git a/packages/filesystem/font-source-code-pro/src/SourceCodePro-Regular.ttf b/filesystem/packages/font-source-code-pro/src/SourceCodePro-Regular.ttf similarity index 100% rename from packages/filesystem/font-source-code-pro/src/SourceCodePro-Regular.ttf rename to filesystem/packages/font-source-code-pro/src/SourceCodePro-Regular.ttf diff --git a/packages/filesystem/font-source-code-pro/src/SourceCodePro-Semibold.ttf b/filesystem/packages/font-source-code-pro/src/SourceCodePro-Semibold.ttf similarity index 100% rename from packages/filesystem/font-source-code-pro/src/SourceCodePro-Semibold.ttf rename to filesystem/packages/font-source-code-pro/src/SourceCodePro-Semibold.ttf diff --git a/packages/filesystem/font-source-code-pro/src/SourceCodePro-SemiboldIt.ttf b/filesystem/packages/font-source-code-pro/src/SourceCodePro-SemiboldIt.ttf similarity index 100% rename from packages/filesystem/font-source-code-pro/src/SourceCodePro-SemiboldIt.ttf rename to filesystem/packages/font-source-code-pro/src/SourceCodePro-SemiboldIt.ttf diff --git a/packages/filesystem/font-source-code-pro/src/debian/changelog b/filesystem/packages/font-source-code-pro/src/debian/changelog similarity index 100% rename from packages/filesystem/font-source-code-pro/src/debian/changelog rename to filesystem/packages/font-source-code-pro/src/debian/changelog diff --git a/packages/filesystem/font-source-code-pro/src/debian/compat b/filesystem/packages/font-source-code-pro/src/debian/compat similarity index 100% rename from packages/filesystem/font-source-code-pro/src/debian/compat rename to filesystem/packages/font-source-code-pro/src/debian/compat diff --git a/packages/filesystem/font-source-code-pro/src/debian/control b/filesystem/packages/font-source-code-pro/src/debian/control similarity index 100% rename from packages/filesystem/font-source-code-pro/src/debian/control rename to filesystem/packages/font-source-code-pro/src/debian/control diff --git a/packages/filesystem/font-source-code-pro/src/debian/rules b/filesystem/packages/font-source-code-pro/src/debian/rules similarity index 100% rename from packages/filesystem/font-source-code-pro/src/debian/rules rename to filesystem/packages/font-source-code-pro/src/debian/rules diff --git a/packages/filesystem/makefile b/filesystem/packages/makefile similarity index 100% rename from packages/filesystem/makefile rename to filesystem/packages/makefile diff --git a/packages/filesystem/mosys/.gitignore b/filesystem/packages/mosys/.gitignore similarity index 100% rename from packages/filesystem/mosys/.gitignore rename to filesystem/packages/mosys/.gitignore diff --git a/packages/filesystem/mosys/makefile b/filesystem/packages/mosys/makefile similarity index 94% rename from packages/filesystem/mosys/makefile rename to filesystem/packages/mosys/makefile index c3dd922..be5ae0d 100644 --- a/packages/filesystem/mosys/makefile +++ b/filesystem/packages/mosys/makefile @@ -1,3 +1,4 @@ +.DEFAULT_GOAL := default #import all shared make vars PRAWNOS_ROOT := $(shell git rev-parse --show-toplevel) include $(PRAWNOS_ROOT)/scripts/BuildScripts/BuildCommon.mk @@ -9,6 +10,8 @@ PACKAGE_NAME_DEB := $(PACKAGE_NAME).deb PACKAGE_LOCAL_BUILD_DEPS := flashmap +default: $(PACKAGE_NAME_DEB) + $(PACKAGE_NAME_DEB): $(PRAWNOS_PACKAGE_SCRIPTS_PBUILD) $(PACKAGE_NAME_DEB) \ $(PBUILDER_VARS) \ diff --git a/packages/filesystem/mosys/mosys_69.10895.orig.tar.gz b/filesystem/packages/mosys/mosys_69.10895.orig.tar.gz similarity index 100% rename from packages/filesystem/mosys/mosys_69.10895.orig.tar.gz rename to filesystem/packages/mosys/mosys_69.10895.orig.tar.gz diff --git a/packages/filesystem/mosys/src/debian/changelog b/filesystem/packages/mosys/src/debian/changelog similarity index 100% rename from packages/filesystem/mosys/src/debian/changelog rename to filesystem/packages/mosys/src/debian/changelog diff --git a/packages/filesystem/mosys/src/debian/compat b/filesystem/packages/mosys/src/debian/compat similarity index 100% rename from packages/filesystem/mosys/src/debian/compat rename to filesystem/packages/mosys/src/debian/compat diff --git a/packages/filesystem/mosys/src/debian/control b/filesystem/packages/mosys/src/debian/control similarity index 100% rename from packages/filesystem/mosys/src/debian/control rename to filesystem/packages/mosys/src/debian/control diff --git a/packages/filesystem/mosys/src/debian/copyright b/filesystem/packages/mosys/src/debian/copyright similarity index 100% rename from packages/filesystem/mosys/src/debian/copyright rename to filesystem/packages/mosys/src/debian/copyright diff --git a/packages/filesystem/mosys/src/debian/rules b/filesystem/packages/mosys/src/debian/rules similarity index 100% rename from packages/filesystem/mosys/src/debian/rules rename to filesystem/packages/mosys/src/debian/rules diff --git a/packages/filesystem/xsecurelock/.gitignore b/filesystem/packages/xsecurelock/.gitignore similarity index 100% rename from packages/filesystem/xsecurelock/.gitignore rename to filesystem/packages/xsecurelock/.gitignore diff --git a/packages/filesystem/xsecurelock/makefile b/filesystem/packages/xsecurelock/makefile similarity index 94% rename from packages/filesystem/xsecurelock/makefile rename to filesystem/packages/xsecurelock/makefile index 3069f4c..0853fc1 100644 --- a/packages/filesystem/xsecurelock/makefile +++ b/filesystem/packages/xsecurelock/makefile @@ -1,3 +1,4 @@ +.DEFAULT_GOAL := default #import all shared make vars PRAWNOS_ROOT := $(shell git rev-parse --show-toplevel) include $(PRAWNOS_ROOT)/scripts/BuildScripts/BuildCommon.mk @@ -9,6 +10,8 @@ PACKAGE_NAME_DEB := $(PACKAGE_NAME).deb PACKAGE_LOCAL_BUILD_DEPS := +default: $(PACKAGE_NAME_DEB) + $(PACKAGE_NAME_DEB): $(PRAWNOS_PACKAGE_SCRIPTS_PBUILD) $(PACKAGE_NAME_DEB) \ $(PBUILDER_VARS) \ diff --git a/packages/filesystem/xsecurelock/src/debian/changelog b/filesystem/packages/xsecurelock/src/debian/changelog similarity index 100% rename from packages/filesystem/xsecurelock/src/debian/changelog rename to filesystem/packages/xsecurelock/src/debian/changelog diff --git a/packages/filesystem/xsecurelock/src/debian/compat b/filesystem/packages/xsecurelock/src/debian/compat similarity index 100% rename from packages/filesystem/xsecurelock/src/debian/compat rename to filesystem/packages/xsecurelock/src/debian/compat diff --git a/packages/filesystem/xsecurelock/src/debian/control b/filesystem/packages/xsecurelock/src/debian/control similarity index 100% rename from packages/filesystem/xsecurelock/src/debian/control rename to filesystem/packages/xsecurelock/src/debian/control diff --git a/packages/filesystem/xsecurelock/src/debian/copyright b/filesystem/packages/xsecurelock/src/debian/copyright similarity index 100% rename from packages/filesystem/xsecurelock/src/debian/copyright rename to filesystem/packages/xsecurelock/src/debian/copyright diff --git a/packages/filesystem/xsecurelock/src/debian/docs b/filesystem/packages/xsecurelock/src/debian/docs similarity index 100% rename from packages/filesystem/xsecurelock/src/debian/docs rename to filesystem/packages/xsecurelock/src/debian/docs diff --git a/packages/filesystem/xsecurelock/src/debian/rules b/filesystem/packages/xsecurelock/src/debian/rules similarity index 100% rename from packages/filesystem/xsecurelock/src/debian/rules rename to filesystem/packages/xsecurelock/src/debian/rules diff --git a/packages/filesystem/xsecurelock/src/debian/source/format b/filesystem/packages/xsecurelock/src/debian/source/format similarity index 100% rename from packages/filesystem/xsecurelock/src/debian/source/format rename to filesystem/packages/xsecurelock/src/debian/source/format diff --git a/packages/filesystem/xsecurelock/src/debian/watch b/filesystem/packages/xsecurelock/src/debian/watch similarity index 100% rename from packages/filesystem/xsecurelock/src/debian/watch rename to filesystem/packages/xsecurelock/src/debian/watch diff --git a/packages/filesystem/xsecurelock/xsecurelock_1.5.1.orig.tar.gz b/filesystem/packages/xsecurelock/xsecurelock_1.5.1.orig.tar.gz similarity index 100% rename from packages/filesystem/xsecurelock/xsecurelock_1.5.1.orig.tar.gz rename to filesystem/packages/xsecurelock/xsecurelock_1.5.1.orig.tar.gz diff --git a/resources/InstallResources/30-touchpad.conf b/filesystem/resources/InstallResources/30-touchpad.conf similarity index 100% rename from resources/InstallResources/30-touchpad.conf rename to filesystem/resources/InstallResources/30-touchpad.conf diff --git a/resources/InstallResources/default.pa b/filesystem/resources/InstallResources/default.pa similarity index 100% rename from resources/InstallResources/default.pa rename to filesystem/resources/InstallResources/default.pa diff --git a/resources/InstallResources/default.sh b/filesystem/resources/InstallResources/default.sh similarity index 100% rename from resources/InstallResources/default.sh rename to filesystem/resources/InstallResources/default.sh diff --git a/resources/InstallResources/firefox-esr/prawn-settings.js b/filesystem/resources/InstallResources/firefox-esr/prawn-settings.js similarity index 100% rename from resources/InstallResources/firefox-esr/prawn-settings.js rename to filesystem/resources/InstallResources/firefox-esr/prawn-settings.js diff --git a/resources/InstallResources/firefox-esr/prawn.cfg b/filesystem/resources/InstallResources/firefox-esr/prawn.cfg similarity index 100% rename from resources/InstallResources/firefox-esr/prawn.cfg rename to filesystem/resources/InstallResources/firefox-esr/prawn.cfg diff --git a/resources/InstallResources/headphone-acpi-toggle b/filesystem/resources/InstallResources/headphone-acpi-toggle similarity index 100% rename from resources/InstallResources/headphone-acpi-toggle rename to filesystem/resources/InstallResources/headphone-acpi-toggle diff --git a/resources/InstallResources/mmc.partmap b/filesystem/resources/InstallResources/mmc.partmap similarity index 100% rename from resources/InstallResources/mmc.partmap rename to filesystem/resources/InstallResources/mmc.partmap diff --git a/resources/InstallResources/mmc_type2.partmap b/filesystem/resources/InstallResources/mmc_type2.partmap similarity index 100% rename from resources/InstallResources/mmc_type2.partmap rename to filesystem/resources/InstallResources/mmc_type2.partmap diff --git a/resources/InstallResources/packages/Package_Build_Instructions.txt b/filesystem/resources/InstallResources/packages/Package_Build_Instructions.txt similarity index 100% rename from resources/InstallResources/packages/Package_Build_Instructions.txt rename to filesystem/resources/InstallResources/packages/Package_Build_Instructions.txt diff --git a/resources/InstallResources/packages/libinput-gestures.tar.gz b/filesystem/resources/InstallResources/packages/libinput-gestures.tar.gz similarity index 100% rename from resources/InstallResources/packages/libinput-gestures.tar.gz rename to filesystem/resources/InstallResources/packages/libinput-gestures.tar.gz diff --git a/resources/InstallResources/sound.sh b/filesystem/resources/InstallResources/sound.sh similarity index 100% rename from resources/InstallResources/sound.sh rename to filesystem/resources/InstallResources/sound.sh diff --git a/resources/InstallResources/wallpapers/1.JPG b/filesystem/resources/InstallResources/wallpapers/1.JPG similarity index 100% rename from resources/InstallResources/wallpapers/1.JPG rename to filesystem/resources/InstallResources/wallpapers/1.JPG diff --git a/resources/InstallResources/wallpapers/10.JPG b/filesystem/resources/InstallResources/wallpapers/10.JPG similarity index 100% rename from resources/InstallResources/wallpapers/10.JPG rename to filesystem/resources/InstallResources/wallpapers/10.JPG diff --git a/resources/InstallResources/wallpapers/11.JPG b/filesystem/resources/InstallResources/wallpapers/11.JPG similarity index 100% rename from resources/InstallResources/wallpapers/11.JPG rename to filesystem/resources/InstallResources/wallpapers/11.JPG diff --git a/resources/InstallResources/wallpapers/12.JPG b/filesystem/resources/InstallResources/wallpapers/12.JPG similarity index 100% rename from resources/InstallResources/wallpapers/12.JPG rename to filesystem/resources/InstallResources/wallpapers/12.JPG diff --git a/resources/InstallResources/wallpapers/13.JPG b/filesystem/resources/InstallResources/wallpapers/13.JPG similarity index 100% rename from resources/InstallResources/wallpapers/13.JPG rename to filesystem/resources/InstallResources/wallpapers/13.JPG diff --git a/resources/InstallResources/wallpapers/2.JPG b/filesystem/resources/InstallResources/wallpapers/2.JPG similarity index 100% rename from resources/InstallResources/wallpapers/2.JPG rename to filesystem/resources/InstallResources/wallpapers/2.JPG diff --git a/resources/InstallResources/wallpapers/3.jpg b/filesystem/resources/InstallResources/wallpapers/3.jpg similarity index 100% rename from resources/InstallResources/wallpapers/3.jpg rename to filesystem/resources/InstallResources/wallpapers/3.jpg diff --git a/resources/InstallResources/wallpapers/4.jpg b/filesystem/resources/InstallResources/wallpapers/4.jpg similarity index 100% rename from resources/InstallResources/wallpapers/4.jpg rename to filesystem/resources/InstallResources/wallpapers/4.jpg diff --git a/resources/InstallResources/wallpapers/5.JPG b/filesystem/resources/InstallResources/wallpapers/5.JPG similarity index 100% rename from resources/InstallResources/wallpapers/5.JPG rename to filesystem/resources/InstallResources/wallpapers/5.JPG diff --git a/resources/InstallResources/wallpapers/6.JPG b/filesystem/resources/InstallResources/wallpapers/6.JPG similarity index 100% rename from resources/InstallResources/wallpapers/6.JPG rename to filesystem/resources/InstallResources/wallpapers/6.JPG diff --git a/resources/InstallResources/wallpapers/7.jpg b/filesystem/resources/InstallResources/wallpapers/7.jpg similarity index 100% rename from resources/InstallResources/wallpapers/7.jpg rename to filesystem/resources/InstallResources/wallpapers/7.jpg diff --git a/resources/InstallResources/wallpapers/8.JPG b/filesystem/resources/InstallResources/wallpapers/8.JPG similarity index 100% rename from resources/InstallResources/wallpapers/8.JPG rename to filesystem/resources/InstallResources/wallpapers/8.JPG diff --git a/resources/InstallResources/wallpapers/9.JPG b/filesystem/resources/InstallResources/wallpapers/9.JPG similarity index 100% rename from resources/InstallResources/wallpapers/9.JPG rename to filesystem/resources/InstallResources/wallpapers/9.JPG diff --git a/resources/InstallResources/wallpapers/COPYING b/filesystem/resources/InstallResources/wallpapers/COPYING similarity index 100% rename from resources/InstallResources/wallpapers/COPYING rename to filesystem/resources/InstallResources/wallpapers/COPYING diff --git a/resources/InstallResources/wallpapers/default b/filesystem/resources/InstallResources/wallpapers/default similarity index 100% rename from resources/InstallResources/wallpapers/default rename to filesystem/resources/InstallResources/wallpapers/default diff --git a/resources/InstallResources/xfce-config/brightness/backlight.rules b/filesystem/resources/InstallResources/xfce-config/brightness/backlight.rules similarity index 100% rename from resources/InstallResources/xfce-config/brightness/backlight.rules rename to filesystem/resources/InstallResources/xfce-config/brightness/backlight.rules diff --git a/resources/InstallResources/xfce-config/brightness/backlight_down.sh b/filesystem/resources/InstallResources/xfce-config/brightness/backlight_down.sh similarity index 100% rename from resources/InstallResources/xfce-config/brightness/backlight_down.sh rename to filesystem/resources/InstallResources/xfce-config/brightness/backlight_down.sh diff --git a/resources/InstallResources/xfce-config/brightness/backlight_up.sh b/filesystem/resources/InstallResources/xfce-config/brightness/backlight_up.sh similarity index 100% rename from resources/InstallResources/xfce-config/brightness/backlight_up.sh rename to filesystem/resources/InstallResources/xfce-config/brightness/backlight_up.sh diff --git a/resources/InstallResources/xfce-config/inputrc/.inputrc b/filesystem/resources/InstallResources/xfce-config/inputrc/.inputrc similarity index 100% rename from resources/InstallResources/xfce-config/inputrc/.inputrc rename to filesystem/resources/InstallResources/xfce-config/inputrc/.inputrc diff --git a/resources/InstallResources/xfce-config/libinput-gestures/libinput-gestures.conf b/filesystem/resources/InstallResources/xfce-config/libinput-gestures/libinput-gestures.conf similarity index 100% rename from resources/InstallResources/xfce-config/libinput-gestures/libinput-gestures.conf rename to filesystem/resources/InstallResources/xfce-config/libinput-gestures/libinput-gestures.conf diff --git a/resources/InstallResources/xfce-config/libinput-gestures/libinput-gestures.desktop b/filesystem/resources/InstallResources/xfce-config/libinput-gestures/libinput-gestures.desktop similarity index 100% rename from resources/InstallResources/xfce-config/libinput-gestures/libinput-gestures.desktop rename to filesystem/resources/InstallResources/xfce-config/libinput-gestures/libinput-gestures.desktop diff --git a/resources/InstallResources/xfce-config/lightdm/lightdm-gtk-greeter.conf b/filesystem/resources/InstallResources/xfce-config/lightdm/lightdm-gtk-greeter.conf similarity index 100% rename from resources/InstallResources/xfce-config/lightdm/lightdm-gtk-greeter.conf rename to filesystem/resources/InstallResources/xfce-config/lightdm/lightdm-gtk-greeter.conf diff --git a/resources/InstallResources/xfce-config/panel/default.xml b/filesystem/resources/InstallResources/xfce-config/panel/default.xml similarity index 100% rename from resources/InstallResources/xfce-config/panel/default.xml rename to filesystem/resources/InstallResources/xfce-config/panel/default.xml diff --git a/resources/InstallResources/xfce-config/plank/plank-launchers/Thunar.dockitem b/filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/Thunar.dockitem similarity index 100% rename from resources/InstallResources/xfce-config/plank/plank-launchers/Thunar.dockitem rename to filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/Thunar.dockitem diff --git a/resources/InstallResources/xfce-config/plank/plank-launchers/chromium.dockitem b/filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/chromium.dockitem similarity index 100% rename from resources/InstallResources/xfce-config/plank/plank-launchers/chromium.dockitem rename to filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/chromium.dockitem diff --git a/resources/InstallResources/xfce-config/plank/plank-launchers/emacs25.dockitem b/filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/emacs25.dockitem similarity index 100% rename from resources/InstallResources/xfce-config/plank/plank-launchers/emacs25.dockitem rename to filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/emacs25.dockitem diff --git a/resources/InstallResources/xfce-config/plank/plank-launchers/firefox-esr.dockitem b/filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/firefox-esr.dockitem similarity index 100% rename from resources/InstallResources/xfce-config/plank/plank-launchers/firefox-esr.dockitem rename to filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/firefox-esr.dockitem diff --git a/resources/InstallResources/xfce-config/plank/plank-launchers/mousepad.dockitem b/filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/mousepad.dockitem similarity index 100% rename from resources/InstallResources/xfce-config/plank/plank-launchers/mousepad.dockitem rename to filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/mousepad.dockitem diff --git a/resources/InstallResources/xfce-config/plank/plank-launchers/vlc.dockitem b/filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/vlc.dockitem similarity index 100% rename from resources/InstallResources/xfce-config/plank/plank-launchers/vlc.dockitem rename to filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/vlc.dockitem diff --git a/resources/InstallResources/xfce-config/plank/plank-launchers/xfcalendar.dockitem b/filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/xfcalendar.dockitem similarity index 100% rename from resources/InstallResources/xfce-config/plank/plank-launchers/xfcalendar.dockitem rename to filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/xfcalendar.dockitem diff --git a/resources/InstallResources/xfce-config/plank/plank-launchers/xfce4-terminal.dockitem b/filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/xfce4-terminal.dockitem similarity index 100% rename from resources/InstallResources/xfce-config/plank/plank-launchers/xfce4-terminal.dockitem rename to filesystem/resources/InstallResources/xfce-config/plank/plank-launchers/xfce4-terminal.dockitem diff --git a/resources/InstallResources/xfce-config/plank/plank.dconf b/filesystem/resources/InstallResources/xfce-config/plank/plank.dconf similarity index 100% rename from resources/InstallResources/xfce-config/plank/plank.dconf rename to filesystem/resources/InstallResources/xfce-config/plank/plank.dconf diff --git a/resources/InstallResources/xfce-config/plank/plank.desktop b/filesystem/resources/InstallResources/xfce-config/plank/plank.desktop similarity index 100% rename from resources/InstallResources/xfce-config/plank/plank.desktop rename to filesystem/resources/InstallResources/xfce-config/plank/plank.desktop diff --git a/resources/InstallResources/xfce-config/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml b/filesystem/resources/InstallResources/xfce-config/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml similarity index 100% rename from resources/InstallResources/xfce-config/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml rename to filesystem/resources/InstallResources/xfce-config/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml diff --git a/resources/InstallResources/xfce-config/xfce-perchannel-xml/xfce4-power-manager.xml b/filesystem/resources/InstallResources/xfce-config/xfce-perchannel-xml/xfce4-power-manager.xml similarity index 100% rename from resources/InstallResources/xfce-config/xfce-perchannel-xml/xfce4-power-manager.xml rename to filesystem/resources/InstallResources/xfce-config/xfce-perchannel-xml/xfce4-power-manager.xml diff --git a/resources/InstallResources/xfce-config/xfce-perchannel-xml/xfce4-screensaver.xml b/filesystem/resources/InstallResources/xfce-config/xfce-perchannel-xml/xfce4-screensaver.xml similarity index 100% rename from resources/InstallResources/xfce-config/xfce-perchannel-xml/xfce4-screensaver.xml rename to filesystem/resources/InstallResources/xfce-config/xfce-perchannel-xml/xfce4-screensaver.xml diff --git a/resources/InstallResources/xfce-config/xfce-perchannel-xml/xfwm4.xml b/filesystem/resources/InstallResources/xfce-config/xfce-perchannel-xml/xfwm4.xml similarity index 100% rename from resources/InstallResources/xfce-config/xfce-perchannel-xml/xfwm4.xml rename to filesystem/resources/InstallResources/xfce-config/xfce-perchannel-xml/xfwm4.xml diff --git a/resources/InstallResources/xfce-config/xfce-perchannel-xml/xsettings.xml b/filesystem/resources/InstallResources/xfce-config/xfce-perchannel-xml/xsettings.xml similarity index 100% rename from resources/InstallResources/xfce-config/xfce-perchannel-xml/xsettings.xml rename to filesystem/resources/InstallResources/xfce-config/xfce-perchannel-xml/xsettings.xml diff --git a/resources/InstallResources/xfce-config/xflock-xsecurelock.patch b/filesystem/resources/InstallResources/xfce-config/xflock-xsecurelock.patch similarity index 100% rename from resources/InstallResources/xfce-config/xflock-xsecurelock.patch rename to filesystem/resources/InstallResources/xfce-config/xflock-xsecurelock.patch diff --git a/resources/InstallResources/xfce-themes/prawnos-numix-gtk-theme_2.6.6-1_all.deb b/filesystem/resources/InstallResources/xfce-themes/prawnos-numix-gtk-theme_2.6.6-1_all.deb similarity index 100% rename from resources/InstallResources/xfce-themes/prawnos-numix-gtk-theme_2.6.6-1_all.deb rename to filesystem/resources/InstallResources/xfce-themes/prawnos-numix-gtk-theme_2.6.6-1_all.deb diff --git a/resources/InstallResources/xkb/compat/chromebook b/filesystem/resources/InstallResources/xkb/compat/chromebook similarity index 100% rename from resources/InstallResources/xkb/compat/chromebook rename to filesystem/resources/InstallResources/xkb/compat/chromebook diff --git a/resources/InstallResources/xkb/keyboard b/filesystem/resources/InstallResources/xkb/keyboard similarity index 100% rename from resources/InstallResources/xkb/keyboard rename to filesystem/resources/InstallResources/xkb/keyboard diff --git a/resources/InstallResources/xkb/keycodes/chromebook_m b/filesystem/resources/InstallResources/xkb/keycodes/chromebook_m similarity index 100% rename from resources/InstallResources/xkb/keycodes/chromebook_m rename to filesystem/resources/InstallResources/xkb/keycodes/chromebook_m diff --git a/resources/InstallResources/xkb/rules/base.chromebook.patch b/filesystem/resources/InstallResources/xkb/rules/base.chromebook.patch similarity index 100% rename from resources/InstallResources/xkb/rules/base.chromebook.patch rename to filesystem/resources/InstallResources/xkb/rules/base.chromebook.patch diff --git a/resources/InstallResources/xkb/rules/base.lst.chromebook.patch b/filesystem/resources/InstallResources/xkb/rules/base.lst.chromebook.patch similarity index 100% rename from resources/InstallResources/xkb/rules/base.lst.chromebook.patch rename to filesystem/resources/InstallResources/xkb/rules/base.lst.chromebook.patch diff --git a/resources/InstallResources/xkb/rules/base.xml.chromebook.patch b/filesystem/resources/InstallResources/xkb/rules/base.xml.chromebook.patch similarity index 100% rename from resources/InstallResources/xkb/rules/base.xml.chromebook.patch rename to filesystem/resources/InstallResources/xkb/rules/base.xml.chromebook.patch diff --git a/resources/InstallResources/xkb/rules/evdev.chromebook.patch b/filesystem/resources/InstallResources/xkb/rules/evdev.chromebook.patch similarity index 100% rename from resources/InstallResources/xkb/rules/evdev.chromebook.patch rename to filesystem/resources/InstallResources/xkb/rules/evdev.chromebook.patch diff --git a/resources/InstallResources/xkb/rules/evdev.lst.chromebook.patch b/filesystem/resources/InstallResources/xkb/rules/evdev.lst.chromebook.patch similarity index 100% rename from resources/InstallResources/xkb/rules/evdev.lst.chromebook.patch rename to filesystem/resources/InstallResources/xkb/rules/evdev.lst.chromebook.patch diff --git a/resources/InstallResources/xkb/rules/evdev.xml.chromebook.patch b/filesystem/resources/InstallResources/xkb/rules/evdev.xml.chromebook.patch similarity index 100% rename from resources/InstallResources/xkb/rules/evdev.xml.chromebook.patch rename to filesystem/resources/InstallResources/xkb/rules/evdev.xml.chromebook.patch diff --git a/resources/InstallResources/xkb/symbols/chromebook b/filesystem/resources/InstallResources/xkb/symbols/chromebook similarity index 100% rename from resources/InstallResources/xkb/symbols/chromebook rename to filesystem/resources/InstallResources/xkb/symbols/chromebook diff --git a/resources/InstallResources/xkb/symbols/chromebook_m b/filesystem/resources/InstallResources/xkb/symbols/chromebook_m similarity index 100% rename from resources/InstallResources/xkb/symbols/chromebook_m rename to filesystem/resources/InstallResources/xkb/symbols/chromebook_m diff --git a/resources/InstallResources/xkb/symbols/chromebook_m_ralt b/filesystem/resources/InstallResources/xkb/symbols/chromebook_m_ralt similarity index 100% rename from resources/InstallResources/xkb/symbols/chromebook_m_ralt rename to filesystem/resources/InstallResources/xkb/symbols/chromebook_m_ralt diff --git a/resources/InstallResources/xkb/symbols/chromebook_ralt b/filesystem/resources/InstallResources/xkb/symbols/chromebook_ralt similarity index 100% rename from resources/InstallResources/xkb/symbols/chromebook_ralt rename to filesystem/resources/InstallResources/xkb/symbols/chromebook_ralt diff --git a/resources/BuildResources/backports.list b/filesystem/resources/apt/backports.list similarity index 100% rename from resources/BuildResources/backports.list rename to filesystem/resources/apt/backports.list diff --git a/resources/BuildResources/backports.pref b/filesystem/resources/apt/backports.pref similarity index 100% rename from resources/BuildResources/backports.pref rename to filesystem/resources/apt/backports.pref diff --git a/resources/BuildResources/bullseye.list b/filesystem/resources/apt/bullseye.list similarity index 100% rename from resources/BuildResources/bullseye.list rename to filesystem/resources/apt/bullseye.list diff --git a/resources/BuildResources/bullseye.pref b/filesystem/resources/apt/bullseye.pref similarity index 100% rename from resources/BuildResources/bullseye.pref rename to filesystem/resources/apt/bullseye.pref diff --git a/resources/BuildResources/deb.prawnos.com.gpg.key b/filesystem/resources/apt/deb.prawnos.com.gpg.key similarity index 100% rename from resources/BuildResources/deb.prawnos.com.gpg.key rename to filesystem/resources/apt/deb.prawnos.com.gpg.key diff --git a/resources/BuildResources/debian-archive-keyring.gpg b/filesystem/resources/apt/debian-archive-keyring.gpg similarity index 100% rename from resources/BuildResources/debian-archive-keyring.gpg rename to filesystem/resources/apt/debian-archive-keyring.gpg diff --git a/resources/BuildResources/sid.list b/filesystem/resources/apt/sid.list similarity index 100% rename from resources/BuildResources/sid.list rename to filesystem/resources/apt/sid.list diff --git a/resources/BuildResources/sid.pref b/filesystem/resources/apt/sid.pref similarity index 100% rename from resources/BuildResources/sid.pref rename to filesystem/resources/apt/sid.pref diff --git a/resources/BuildResources/sources.list b/filesystem/resources/apt/sources.list similarity index 100% rename from resources/BuildResources/sources.list rename to filesystem/resources/apt/sources.list diff --git a/resources/BuildResources/updates.list b/filesystem/resources/apt/updates.list similarity index 100% rename from resources/BuildResources/updates.list rename to filesystem/resources/apt/updates.list diff --git a/resources/BuildResources/external_fstab b/filesystem/resources/external_fstab similarity index 100% rename from resources/BuildResources/external_fstab rename to filesystem/resources/external_fstab diff --git a/resources/BuildResources/locale.gen b/filesystem/resources/locale.gen similarity index 100% rename from resources/BuildResources/locale.gen rename to filesystem/resources/locale.gen diff --git a/resources/BuildResources/logo/icons/OtherColors/icon-large-dark-blue-back.png b/filesystem/resources/logo/icons/OtherColors/icon-large-dark-blue-back.png similarity index 100% rename from resources/BuildResources/logo/icons/OtherColors/icon-large-dark-blue-back.png rename to filesystem/resources/logo/icons/OtherColors/icon-large-dark-blue-back.png diff --git a/resources/BuildResources/logo/icons/OtherColors/icon-large-dark-grey-back.png b/filesystem/resources/logo/icons/OtherColors/icon-large-dark-grey-back.png similarity index 100% rename from resources/BuildResources/logo/icons/OtherColors/icon-large-dark-grey-back.png rename to filesystem/resources/logo/icons/OtherColors/icon-large-dark-grey-back.png diff --git a/resources/BuildResources/logo/icons/OtherColors/icon-large-light-purple-back-2.png b/filesystem/resources/logo/icons/OtherColors/icon-large-light-purple-back-2.png similarity index 100% rename from resources/BuildResources/logo/icons/OtherColors/icon-large-light-purple-back-2.png rename to filesystem/resources/logo/icons/OtherColors/icon-large-light-purple-back-2.png diff --git a/resources/BuildResources/logo/icons/OtherColors/icon-large-light-purple-back-3.png b/filesystem/resources/logo/icons/OtherColors/icon-large-light-purple-back-3.png similarity index 100% rename from resources/BuildResources/logo/icons/OtherColors/icon-large-light-purple-back-3.png rename to filesystem/resources/logo/icons/OtherColors/icon-large-light-purple-back-3.png diff --git a/resources/BuildResources/logo/icons/OtherColors/icon-large-light-purple-back-4.png b/filesystem/resources/logo/icons/OtherColors/icon-large-light-purple-back-4.png similarity index 100% rename from resources/BuildResources/logo/icons/OtherColors/icon-large-light-purple-back-4.png rename to filesystem/resources/logo/icons/OtherColors/icon-large-light-purple-back-4.png diff --git a/resources/BuildResources/logo/icons/OtherColors/icon-large-light-purple-back-5.png b/filesystem/resources/logo/icons/OtherColors/icon-large-light-purple-back-5.png similarity index 100% rename from resources/BuildResources/logo/icons/OtherColors/icon-large-light-purple-back-5.png rename to filesystem/resources/logo/icons/OtherColors/icon-large-light-purple-back-5.png diff --git a/resources/BuildResources/logo/icons/OtherColors/icon-large-light-purple-back.png b/filesystem/resources/logo/icons/OtherColors/icon-large-light-purple-back.png similarity index 100% rename from resources/BuildResources/logo/icons/OtherColors/icon-large-light-purple-back.png rename to filesystem/resources/logo/icons/OtherColors/icon-large-light-purple-back.png diff --git a/resources/BuildResources/logo/icons/OtherColors/icon-large-light-teal-back-2.png b/filesystem/resources/logo/icons/OtherColors/icon-large-light-teal-back-2.png similarity index 100% rename from resources/BuildResources/logo/icons/OtherColors/icon-large-light-teal-back-2.png rename to filesystem/resources/logo/icons/OtherColors/icon-large-light-teal-back-2.png diff --git a/resources/BuildResources/logo/icons/OtherColors/icon-large-light-teal-back-3.png b/filesystem/resources/logo/icons/OtherColors/icon-large-light-teal-back-3.png similarity index 100% rename from resources/BuildResources/logo/icons/OtherColors/icon-large-light-teal-back-3.png rename to filesystem/resources/logo/icons/OtherColors/icon-large-light-teal-back-3.png diff --git a/resources/BuildResources/logo/icons/OtherColors/icon-large-light-teal-back-4.png b/filesystem/resources/logo/icons/OtherColors/icon-large-light-teal-back-4.png similarity index 100% rename from resources/BuildResources/logo/icons/OtherColors/icon-large-light-teal-back-4.png rename to filesystem/resources/logo/icons/OtherColors/icon-large-light-teal-back-4.png diff --git a/resources/BuildResources/logo/icons/OtherColors/icon-large-light-teal-back.png b/filesystem/resources/logo/icons/OtherColors/icon-large-light-teal-back.png similarity index 100% rename from resources/BuildResources/logo/icons/OtherColors/icon-large-light-teal-back.png rename to filesystem/resources/logo/icons/OtherColors/icon-large-light-teal-back.png diff --git a/resources/BuildResources/logo/icons/ascii/ascii-icon-small.txt b/filesystem/resources/logo/icons/ascii/ascii-icon-small.txt similarity index 100% rename from resources/BuildResources/logo/icons/ascii/ascii-icon-small.txt rename to filesystem/resources/logo/icons/ascii/ascii-icon-small.txt diff --git a/resources/BuildResources/logo/icons/ascii/ascii-icon.txt b/filesystem/resources/logo/icons/ascii/ascii-icon.txt similarity index 100% rename from resources/BuildResources/logo/icons/ascii/ascii-icon.txt rename to filesystem/resources/logo/icons/ascii/ascii-icon.txt diff --git a/resources/BuildResources/logo/icons/icon-full.png b/filesystem/resources/logo/icons/icon-full.png similarity index 100% rename from resources/BuildResources/logo/icons/icon-full.png rename to filesystem/resources/logo/icons/icon-full.png diff --git a/resources/BuildResources/logo/icons/icon-large.png b/filesystem/resources/logo/icons/icon-large.png similarity index 100% rename from resources/BuildResources/logo/icons/icon-large.png rename to filesystem/resources/logo/icons/icon-large.png diff --git a/resources/BuildResources/logo/icons/icon-med.png b/filesystem/resources/logo/icons/icon-med.png similarity index 100% rename from resources/BuildResources/logo/icons/icon-med.png rename to filesystem/resources/logo/icons/icon-med.png diff --git a/resources/BuildResources/logo/icons/icon-small-noback.png b/filesystem/resources/logo/icons/icon-small-noback.png similarity index 100% rename from resources/BuildResources/logo/icons/icon-small-noback.png rename to filesystem/resources/logo/icons/icon-small-noback.png diff --git a/resources/BuildResources/logo/icons/icon-small.png b/filesystem/resources/logo/icons/icon-small.png similarity index 100% rename from resources/BuildResources/logo/icons/icon-small.png rename to filesystem/resources/logo/icons/icon-small.png diff --git a/resources/BuildResources/logo/icons/icon.xcf b/filesystem/resources/logo/icons/icon.xcf similarity index 100% rename from resources/BuildResources/logo/icons/icon.xcf rename to filesystem/resources/logo/icons/icon.xcf diff --git a/resources/BuildResources/logo/newPrawn.xcf b/filesystem/resources/logo/newPrawn.xcf similarity index 100% rename from resources/BuildResources/logo/newPrawn.xcf rename to filesystem/resources/logo/newPrawn.xcf diff --git a/resources/BuildResources/logo/newPrawn_merged.xcf b/filesystem/resources/logo/newPrawn_merged.xcf similarity index 100% rename from resources/BuildResources/logo/newPrawn_merged.xcf rename to filesystem/resources/logo/newPrawn_merged.xcf diff --git a/resources/BuildResources/logo/newPrawn_transparent.png b/filesystem/resources/logo/newPrawn_transparent.png similarity index 100% rename from resources/BuildResources/logo/newPrawn_transparent.png rename to filesystem/resources/logo/newPrawn_transparent.png diff --git a/resources/BuildResources/logo/newPrawn_transparent_high_compression.png b/filesystem/resources/logo/newPrawn_transparent_high_compression.png similarity index 100% rename from resources/BuildResources/logo/newPrawn_transparent_high_compression.png rename to filesystem/resources/logo/newPrawn_transparent_high_compression.png diff --git a/resources/BuildResources/logo/old prawn logo.psd b/filesystem/resources/logo/old prawn logo.psd similarity index 100% rename from resources/BuildResources/logo/old prawn logo.psd rename to filesystem/resources/logo/old prawn logo.psd diff --git a/resources/BuildResources/pbuilder/hooks/D60no-man-db-rebuild b/filesystem/resources/pbuilder/hooks/D60no-man-db-rebuild similarity index 100% rename from resources/BuildResources/pbuilder/hooks/D60no-man-db-rebuild rename to filesystem/resources/pbuilder/hooks/D60no-man-db-rebuild diff --git a/resources/BuildResources/pbuilder/hooks/D70update b/filesystem/resources/pbuilder/hooks/D70update similarity index 100% rename from resources/BuildResources/pbuilder/hooks/D70update rename to filesystem/resources/pbuilder/hooks/D70update diff --git a/resources/BuildResources/pbuilder/prawnos-pbuilder.rc b/filesystem/resources/pbuilder/prawnos-pbuilder.rc similarity index 100% rename from resources/BuildResources/pbuilder/prawnos-pbuilder.rc rename to filesystem/resources/pbuilder/prawnos-pbuilder.rc diff --git a/initramfs/makefile b/initramfs/makefile new file mode 100644 index 0000000..0c740b9 --- /dev/null +++ b/initramfs/makefile @@ -0,0 +1,23 @@ +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_BUILD_LOG := $(PRAWNOS_BUILD_LOGS)/initramfs-log.txt + +INITRAMFS_RESOURCES := $(PRAWNOS_INITRAMFS)/resources + +.PHONY: initramfs initramfs_clean + +initramfs: $(PRAWNOS_INITRAMFS_IMAGE) + +initramfs_clean: + rm -f $(PRAWNOS_INITRAMFS) + +$(PRAWNOS_INITRAMFS_IMAGE): + rm -rf $(INITRAMFS_BUILD_LOG) + $(PRAWNOS_INITRAMFS_SCRIPTS_BUILD) $(PRAWNOS_IMAGE_BASE) $(INITRAMFS_RESOURCES) $(PRAWNOS_BUILD) 2>&1 | tee $(INITRAMFS_BUILD_LOG) + +endif diff --git a/resources/BuildResources/initramfs-init b/initramfs/resources/initramfs-init similarity index 100% rename from resources/BuildResources/initramfs-init rename to initramfs/resources/initramfs-init diff --git a/kernel/makefile b/kernel/makefile new file mode 100644 index 0000000..7865c18 --- /dev/null +++ b/kernel/makefile @@ -0,0 +1,95 @@ +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 + +KERNEL_BUILD_LOG := $(PRAWNOS_BUILD_LOGS)/kernel-log.txt + +ATH9K_TAR := $(KERNEL_SOURCES)/open-ath9k-htc-firmware.tar.gz +ATH9K := open-ath9k-htc-firmware +ATH9K_BUILT := $(PRAWNOS_ATH9K_BUILD)/target_firmware/htc_9271.fw + +### PHONY TARGETS +.PHONY: kernel +kernel: $(KERNEL_BUILT) + +.PHONY: ath9k +ath9k: $(ATH9K_BUILT) + +.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_sig +update_kernel_sig: + 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) + wget https://www.linux-libre.fsfla.org/pub/linux-libre/releases/$(KVER)-gnu/linux-libre-$(KVER)-gnu.tar.lz -O $(KERNEL_TAR) + 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) + +$(ATH9K_BUILT): $(ATH9K_EXTRACTED) + $(PRAWNOS_KERNEL_SCRIPTS_BUILD_ATH9K) $(PRAWNOS_ATH9K_BUILD) + +$(KERNEL_BUILT): $(KERNEL_EXTRACTED) $(KERNEL_PATCHED) $(ATH9K_BUILT) + make -C $(PRAWNOS_INITRAMFS) + rm -rf $(KERNEL_BUILD_LOG) + $(PRAWNOS_KERNEL_SCRIPTS_BUILD) $(KVER) $(KERNEL_RESOURCES) $(PRAWNOS_KERNEL_BUILD) $(PRAWNOS_INITRAMFS_IMAGE) 2>&1 | tee $(KERNEL_BUILD_LOG) + +endif diff --git a/resources/BuildResources/patches-tested/DTS/0007-RK3288-DTSI-rk3288-Add-missing-SPI2-pinctrl.patch b/kernel/patches/DTS/0007-RK3288-DTSI-rk3288-Add-missing-SPI2-pinctrl.patch similarity index 100% rename from resources/BuildResources/patches-tested/DTS/0007-RK3288-DTSI-rk3288-Add-missing-SPI2-pinctrl.patch rename to kernel/patches/DTS/0007-RK3288-DTSI-rk3288-Add-missing-SPI2-pinctrl.patch diff --git a/resources/BuildResources/patches-tested/kernel/0001-Fix-ath9k-dwc2-init-frame-overruns.patch b/kernel/patches/kernel/0001-Fix-ath9k-dwc2-init-frame-overruns.patch similarity index 100% rename from resources/BuildResources/patches-tested/kernel/0001-Fix-ath9k-dwc2-init-frame-overruns.patch rename to kernel/patches/kernel/0001-Fix-ath9k-dwc2-init-frame-overruns.patch diff --git a/resources/BuildResources/patches-tested/kernel/0001-block-partitions-efi-Add-support-for-IGNOREME-GPT-si.patch b/kernel/patches/kernel/0001-block-partitions-efi-Add-support-for-IGNOREME-GPT-si.patch similarity index 100% rename from resources/BuildResources/patches-tested/kernel/0001-block-partitions-efi-Add-support-for-IGNOREME-GPT-si.patch rename to kernel/patches/kernel/0001-block-partitions-efi-Add-support-for-IGNOREME-GPT-si.patch diff --git a/resources/BuildResources/patches-tested/kernel/0002-Do-not-force-GUID-partition-with-gpt-command-line-op.patch b/kernel/patches/kernel/0002-Do-not-force-GUID-partition-with-gpt-command-line-op.patch similarity index 100% rename from resources/BuildResources/patches-tested/kernel/0002-Do-not-force-GUID-partition-with-gpt-command-line-op.patch rename to kernel/patches/kernel/0002-Do-not-force-GUID-partition-with-gpt-command-line-op.patch diff --git a/resources/BuildResources/patches-tested/kernel/0100-arm-errata-workaround-errata-A12-857271-and-A17-857272.patch b/kernel/patches/kernel/0100-arm-errata-workaround-errata-A12-857271-and-A17-857272.patch similarity index 100% rename from resources/BuildResources/patches-tested/kernel/0100-arm-errata-workaround-errata-A12-857271-and-A17-857272.patch rename to kernel/patches/kernel/0100-arm-errata-workaround-errata-A12-857271-and-A17-857272.patch diff --git a/resources/BuildResources/patches-tested/kernel/5.x-dwc2/0008-usb-dwc2-Add-dwc2_gadget_dec_frame_num_by_one-functi.patch b/kernel/patches/kernel/5.x-dwc2/0008-usb-dwc2-Add-dwc2_gadget_dec_frame_num_by_one-functi.patch similarity index 100% rename from resources/BuildResources/patches-tested/kernel/5.x-dwc2/0008-usb-dwc2-Add-dwc2_gadget_dec_frame_num_by_one-functi.patch rename to kernel/patches/kernel/5.x-dwc2/0008-usb-dwc2-Add-dwc2_gadget_dec_frame_num_by_one-functi.patch diff --git a/resources/BuildResources/patches-tested/kernel/5.x-dwc2/0014-usb-dwc2-gadget-Add-handler-for-WkupAlert-interrupt.patch b/kernel/patches/kernel/5.x-dwc2/0014-usb-dwc2-gadget-Add-handler-for-WkupAlert-interrupt.patch similarity index 100% rename from resources/BuildResources/patches-tested/kernel/5.x-dwc2/0014-usb-dwc2-gadget-Add-handler-for-WkupAlert-interrupt.patch rename to kernel/patches/kernel/5.x-dwc2/0014-usb-dwc2-gadget-Add-handler-for-WkupAlert-interrupt.patch diff --git a/resources/BuildResources/patches-tested/kernel/Added-a-second-reset-when-having-an-issue-reading-th.patch b/kernel/patches/kernel/Added-a-second-reset-when-having-an-issue-reading-th.patch similarity index 100% rename from resources/BuildResources/patches-tested/kernel/Added-a-second-reset-when-having-an-issue-reading-th.patch rename to kernel/patches/kernel/Added-a-second-reset-when-having-an-issue-reading-th.patch diff --git a/resources/BuildResources/patches-tested/kernel/Don-t-try-to-flush-cache-on-reset.patch b/kernel/patches/kernel/Don-t-try-to-flush-cache-on-reset.patch similarity index 100% rename from resources/BuildResources/patches-tested/kernel/Don-t-try-to-flush-cache-on-reset.patch rename to kernel/patches/kernel/Don-t-try-to-flush-cache-on-reset.patch diff --git a/resources/BuildResources/patches-tested/kernel/silence_vop_spam.patch b/kernel/patches/kernel/silence_vop_spam.patch similarity index 100% rename from resources/BuildResources/patches-tested/kernel/silence_vop_spam.patch rename to kernel/patches/kernel/silence_vop_spam.patch diff --git a/resources/BuildResources/cmdline b/kernel/resources/cmdline similarity index 100% rename from resources/BuildResources/cmdline rename to kernel/resources/cmdline diff --git a/resources/BuildResources/config b/kernel/resources/config similarity index 100% rename from resources/BuildResources/config rename to kernel/resources/config diff --git a/resources/BuildResources/kernel.its b/kernel/resources/kernel.its similarity index 100% rename from resources/BuildResources/kernel.its rename to kernel/resources/kernel.its diff --git a/resources/BuildResources/linux-libre-signing-key.gpg b/kernel/resources/linux-libre-signing-key.gpg similarity index 100% rename from resources/BuildResources/linux-libre-signing-key.gpg rename to kernel/resources/linux-libre-signing-key.gpg diff --git a/kernel/sources/linux-libre-5.4.29-gnu.tar.lz.sign b/kernel/sources/linux-libre-5.4.29-gnu.tar.lz.sign new file mode 100644 index 0000000..63597bc --- /dev/null +++ b/kernel/sources/linux-libre-5.4.29-gnu.tar.lz.sign @@ -0,0 +1,6 @@ +-----BEGIN PGP SIGNATURE----- + +iF0EABECAB0WIQRHRALIxYLa++OJxCe8t8+Hfn1HpwUCXoTtgwAKCRC8t8+Hfn1H +p2pMAJ9TOa8OApUkdNhvtzCJ2I4GsQKgvQCfUS/zeXS7D7tY0zTG3iQZkaCC0M8= +=K67B +-----END PGP SIGNATURE----- diff --git a/kernel/sources/open-ath9k-htc-firmware.tar.gz b/kernel/sources/open-ath9k-htc-firmware.tar.gz new file mode 100644 index 0000000..c1f5df2 Binary files /dev/null and b/kernel/sources/open-ath9k-htc-firmware.tar.gz differ diff --git a/makefile b/makefile index 711d164..ac42abf 100644 --- a/makefile +++ b/makefile @@ -13,23 +13,16 @@ # You should have received a copy of the GNU General Public License # along with PrawnOS. If not, see . -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 +include $(PRAWNOS_ROOT)/filesystem/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,134 +34,60 @@ 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 -clean_img: - rm -f $(OUTNAME) +.PHONY: clean_image +clean_image: + 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 -.PHONY: filesystem -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 +#included from filesystem/makefile #:::::::::::::::::::::::::::::: packages :::::::::::::::::::::::::::::::: -.PHONY: packages -packages: - cd packages && $(MAKE) - -.PHONY: packages_install -packages_install: -ifndef INSTALL_TARGET - $(error INSTALL_TARGET is not set) -endif - cd packages && $(MAKE) install INSTALL_TARGET=$(INSTALL_TARGET) +#included from filesystem/makefile #:::::::::::::::::::::::::::::: 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) +kernel_install: #Targets an already built .img and swaps the old kernel with the newly compiled kernel + $(PRAWNOS_IMAGE_SCRIPTS_INSTALL_KERNEL) $(KVER) $(PRAWNOS_IMAGE) .PHONY: kernel_update kernel_update: - $(MAKE) clean_img + $(MAKE) clean_image $(MAKE) initramfs $(MAKE) kernel - cp $(BASE) $(OUTNAME) + cp $(PRAWNOS_IMAGE_BASE) $(PRAWNOS_IMAGE) $(MAKE) kernel_install .PHONY: image image: - $(MAKE) clean_img + $(MAKE) clean_image $(MAKE) filesystem $(MAKE) initramfs $(MAKE) kernel - cp $(BASE) $(OUTNAME) + cp $(PRAWNOS_IMAGE_BASE) $(PRAWNOS_IMAGE) $(MAKE) kernel_install - -#:::::::::::::::::::::::::::::: pbuilder management ::::::::::::::::::::::: -.PHONY: pbuilder_create -pbuilder_create: - $(MAKE) $(PBUILDER_CHROOT) - -$(PBUILDER_CHROOT): - pbuilder create --basetgz $(PBUILDER_CHROOT) --configfile $(PBUILDER_RC) - -#TODO: should only update if not updated for a day -.PHONY: pbuilder_update -pbuilder_update: - pbuilder update --basetgz $(PBUILDER_CHROOT) --configfile $(PBUILDER_RC) diff --git a/packages/initramfs/makefile b/packages/initramfs/makefile deleted file mode 100644 index f8817f6..0000000 --- a/packages/initramfs/makefile +++ /dev/null @@ -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 diff --git a/packages/kernel/makefile b/packages/kernel/makefile deleted file mode 100644 index d9937ce..0000000 --- a/packages/kernel/makefile +++ /dev/null @@ -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 diff --git a/packages/makefile b/packages/makefile deleted file mode 100644 index 8313b3d..0000000 --- a/packages/makefile +++ /dev/null @@ -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 diff --git a/packages/packaging-readme.md b/packages/packaging-readme.md deleted file mode 100644 index bf60179..0000000 --- a/packages/packaging-readme.md +++ /dev/null @@ -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 -``` diff --git a/resources/InstallResources/fonts/source-code-pro b/resources/InstallResources/fonts/source-code-pro deleted file mode 160000 index e99ed3b..0000000 --- a/resources/InstallResources/fonts/source-code-pro +++ /dev/null @@ -1 +0,0 @@ -Subproject commit e99ed3b714cd2b3c0d5ac8cc45fd8181d79c0d0b diff --git a/scripts/BuildScripts/BuildCommon.mk b/scripts/BuildScripts/BuildCommon.mk index c22c910..71c8ec2 100644 --- a/scripts/BuildScripts/BuildCommon.mk +++ b/scripts/BuildScripts/BuildCommon.mk @@ -3,10 +3,40 @@ 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_DEBOOTSTRAP_APT_CACHE := $(PRAWNOS_BUILD)/debootstrap-apt-cache +PRAWNOS_BUILD_CHROOT_APT_CACHE := $(PRAWNOS_BUILD)/chroot-apt-cache + + +### PRAWNOS IMAGES +ifeq ($(DEBIAN_SUITE),) +DEBIAN_SUITE := buster +endif +ifeq ($(PRAWNOS_SUITE),) +PRAWNOS_SUITE := Shiba +endif + +PRAWNOS_IMAGE := $(PRAWNOS_ROOT)/PrawnOS-$(PRAWNOS_SUITE)-c201.img +PRAWNOS_IMAGE_BASE := $(PRAWNOS_IMAGE)-BASE + ### BUILD SCRIPTS PRAWNOS_BUILD_SCRIPTS := $(PRAWNOS_SCRIPTS)/BuildScripts @@ -17,6 +47,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,34 +60,58 @@ 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 PRAWNOS_SHARED_SCRIPTS_PACKAGE_LISTS := $(PRAWNOS_SHARED_SCRIPTS)/package_lists.sh +### FILESYSTEM RESOURCES +PRAWNOS_FILESYSTEM_RESOURCES := $(PRAWNOS_FILESYSTEM)/resources +PRAWNOS_FILESYSTEM_PACKAGES := $(PRAWNOS_FILESYSTEM)/packages + + ### PBUILDER RESOURCES -PBUILDER_DIR := $(PRAWNOS_ROOT)/resources/BuildResources/pbuilder +PBUILDER_DIR := $(PRAWNOS_FILESYSTEM_RESOURCES)//pbuilder PBUILDER_CHROOT := $(PRAWNOS_BUILD)/prawnos-pbuilder-armhf-base.tgz PBUILDER_RC := $(PBUILDER_DIR)/prawnos-pbuilder.rc 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_DEBOOTSTRAP_APT_CACHE) $(PRAWNOS_BUILD_CHROOT_APT_CACHE) + +$(PRAWNOS_BUILD_LOGS): + mkdir -p $(PRAWNOS_BUILD_LOGS) + +$(PRAWNOS_BUILD_DEBOOTSTRAP_APT_CACHE): + mkdir -p $(PRAWNOS_BUILD_DEBOOTSTRAP_APT_CACHE) + +$(PRAWNOS_BUILD_CHROOT_APT_CACHE): + mkdir -p $(PRAWNOS_BUILD_CHROOT_APT_CACHE) + +#========================================================================================= + endif # BUILD_COMMON_MK diff --git a/scripts/BuildScripts/FilesystemScripts/buildFilesystem.sh b/scripts/BuildScripts/FilesystemScripts/buildFilesystem.sh index a5f6e0d..47fbb03 100755 --- a/scripts/BuildScripts/FilesystemScripts/buildFilesystem.sh +++ b/scripts/BuildScripts/FilesystemScripts/buildFilesystem.sh @@ -56,24 +56,30 @@ then echo "No shared scripts path supplied" exit 1 fi +if [ -z "$6" ] +then + echo "No Filesystem resources path supplied" + exit 1 +fi KVER=$1 DEBIAN_SUITE=$2 BASE=$3 PRAWNOS_ROOT=$4 PRAWNOS_SHARED_SCRIPTS=$5 +PRAWNOS_FILESYSTEM_RESOURCES=$6 outmnt=$(mktemp -d -p "$(pwd)") outdev=/dev/loop5 -install_resources=resources/InstallResources -build_resources=resources/BuildResources +install_resources=$PRAWNOS_FILESYSTEM_RESOURCES/InstallResources +build_resources=$PRAWNOS_FILESYSTEM_RESOURCES +build_resources_apt=$build_resources/apt # Import the package lists, shared scripts source $PRAWNOS_SHARED_SCRIPTS/* - #A hacky way to ensure the loops are properly unmounted and the temp files are properly deleted. #Without this, a reboot is sometimes required to properly clean the loop devices and ensure a clean build cleanup() { @@ -95,6 +101,26 @@ cleanup() { trap cleanup INT TERM EXIT +# Download, cache externally, and optionally install the specified packages +# 2: mount of the chroot +# 3: list of packages in install +# 4: if true, download, cache, and install. If false just download and cache +apt_install() { + PRAWNOS_ROOT=$1 + shift + outmnt=$1 + shift + install=$1 + shift + package_list=("$@") + + chroot $outmnt apt install -y -d ${package_list[@]} + cp "$outmnt/var/cache/apt/archives/"* "$PRAWNOS_ROOT/build/chroot-apt-cache/" || true + if [ "$install" = true ]; then + chroot $outmnt apt install -y ${package_list[@]} + fi +} + #layout the partitons and write filesystem information create_image() { dd if=/dev/zero of=$1 bs=$3 count=$4 conv=sparse @@ -131,10 +157,10 @@ export DEBIAN_FRONTEND=noninteractive printf -v debootstrap_debs_install_joined '%s,' "${debootstrap_debs_install[@]}" qemu-debootstrap --arch armhf $DEBIAN_SUITE \ --include ${debootstrap_debs_install_joined%,} \ - --keyring=$build_resources/debian-archive-keyring.gpg \ + --keyring=$build_resources_apt/debian-archive-keyring.gpg \ $outmnt \ $PRAWNOS_DEBOOTSTRAP_MIRROR \ - --cache-dir=$PRAWNOS_ROOT/build/apt-cache/ + --cache-dir=$PRAWNOS_ROOT/build/debootstrap-apt-cache/ chroot $outmnt passwd -d root @@ -153,34 +179,34 @@ chmod +x $outmnt/*.sh #Setup the chroot for apt #This is what https://wiki.debian.org/EmDebian/CrossDebootstrap suggests cp /etc/hosts $outmnt/etc/ -cp $build_resources/sources.list $outmnt/etc/apt/sources.list +cp $build_resources_apt/sources.list $outmnt/etc/apt/sources.list sed -i -e "s/suite/$DEBIAN_SUITE/g" $outmnt/etc/apt/sources.list if [ "$DEBIAN_SUITE" != "sid" ] then # sid doesn't have updates or security; they're present for all other suites - cat $build_resources/updates.list >> $outmnt/etc/apt/sources.list + cat $build_resources_apt/updates.list >> $outmnt/etc/apt/sources.list sed -i -e "s/suite/$DEBIAN_SUITE/g" $outmnt/etc/apt/sources.list # sid doesn't have backports; it's present for all other suites - cp $build_resources/backports.list $outmnt/etc/apt/sources.list.d/ + cp $build_resources_apt/backports.list $outmnt/etc/apt/sources.list.d/ sed -i -e "s/suite/$DEBIAN_SUITE/g" $outmnt/etc/apt/sources.list.d/backports.list #setup apt pinning - cp $build_resources/backports.pref $outmnt/etc/apt/preferences.d/ + cp $build_resources_apt/backports.pref $outmnt/etc/apt/preferences.d/ sed -i -e "s/suite/$DEBIAN_SUITE/g" $outmnt/etc/apt/preferences.d/backports.pref # Install sid (unstable) as an additional source for bleeding edge packages. - cp $build_resources/sid.list $outmnt/etc/apt/sources.list.d/ + cp $build_resources_apt/sid.list $outmnt/etc/apt/sources.list.d/ #setup apt pinning - cp $build_resources/sid.pref $outmnt/etc/apt/preferences.d/ + cp $build_resources_apt/sid.pref $outmnt/etc/apt/preferences.d/ fi if [ "$DEBIAN_SUITE" = "buster" ] then # Install bullseye (testing) as an additional source - cp $build_resources/bullseye.list $outmnt/etc/apt/sources.list.d/ + cp $build_resources_apt/bullseye.list $outmnt/etc/apt/sources.list.d/ #setup apt pinning - cp $build_resources/bullseye.pref $outmnt/etc/apt/preferences.d/ + cp $build_resources_apt/bullseye.pref $outmnt/etc/apt/preferences.d/ fi #Bring in the deb.prawnos.com gpg keyring -cp $build_resources/deb.prawnos.com.gpg.key $outmnt/InstallResources/ +cp $build_resources_apt/deb.prawnos.com.gpg.key $outmnt/InstallResources/ chroot $outmnt apt-key add /InstallResources/deb.prawnos.com.gpg.key chroot $outmnt apt update @@ -188,9 +214,18 @@ chroot $outmnt apt update cp $build_resources/locale.gen $outmnt/etc/locale.gen chroot $outmnt locale-gen +#Copy in the apt cache +cp "$PRAWNOS_ROOT/build/chroot-apt-cache/"* "$outmnt/var/cache/apt/archives/" || true + +echo IMAGE SIZE +df -h + +#Make apt retry on download failure +chroot $outmnt echo "APT::Acquire::Retries \"3\";" > /etc/apt/apt.conf.d/80-retries + #Install the base packages chroot $outmnt apt update -chroot $outmnt apt install -y ${base_debs_install[@]} +apt_install $PRAWNOS_ROOT $outmnt true ${base_debs_install[@]} #add the live-boot fstab cp -f $build_resources/external_fstab $outmnt/etc/fstab @@ -201,17 +236,17 @@ chroot $outmnt apt-get autoremove --purge chroot $outmnt apt-get clean #Download the shared packages to be installed by Install.sh: -chroot $outmnt apt-get install -y -d ${base_debs_download[@]} +apt_install $PRAWNOS_ROOT $outmnt false ${base_debs_download[@]} ## DEs #Download the xfce packages to be installed by Install.sh: -chroot $outmnt apt-get install -y -d ${xfce_debs_download[@]} +apt_install $PRAWNOS_ROOT $outmnt false ${xfce_debs_download[@]} #Download the lxqt packages to be installed by Install.sh: -chroot $outmnt apt-get install -y -d ${lxqt_debs_download[@]} +apt_install $PRAWNOS_ROOT $outmnt false ${lxqt_debs_download[@]} #Download the gnome packages to be installed by Install.sh: -chroot $outmnt apt-get install -y -d ${gnome_debs_download[@]} +apt_install $PRAWNOS_ROOT $outmnt false ${gnome_debs_download[@]} # we want to include all of our built packages in the apt cache for installation later, but we want to let apt download dependencies @@ -223,19 +258,22 @@ chroot $outmnt apt-get install -y -d ${gnome_debs_download[@]} #next call apt install -d on the ./filename or on the package name and apt will recognize it already has the package cached, so will only cache the dependencies #Copy the built prawnos debs over to the image, and update apts cache -cd $PRAWNOS_ROOT && make packages_install INSTALL_TARGET=$outmnt/var/cache/apt/archives/ +cd $PRAWNOS_ROOT && make filesystem_packages_install INSTALL_TARGET=$outmnt/var/cache/apt/archives/ chroot $outmnt apt install -y ${prawnos_base_debs_prebuilt_install[@]} chroot $outmnt apt install -y -d ${prawnos_base_debs_prebuilt_download[@]} chroot $outmnt apt install -y -d ${prawnos_xfce_debs_prebuilt_download[@]} ## GPU support #download mesa packages -chroot $outmnt apt-get install -y -d ${mesa_debs_download[@]} +apt_install $PRAWNOS_ROOT $outmnt false ${mesa_debs_download[@]} #Cleanup hosts rm -rf $outmnt/etc/hosts #This is what https://wiki.debian.org/EmDebian/CrossDebootstrap suggests echo -n "127.0.0.1 PrawnOS" > $outmnt/etc/hosts +#Cleanup apt retry +chroot $outmnt rm -f /etc/apt/apt.conf.d/80-retries + # do a non-error cleanup umount -l $outmnt > /dev/null 2>&1 rmdir $outmnt > /dev/null 2>&1 diff --git a/scripts/BuildScripts/InitramfsScripts/buildInitramFs.sh b/scripts/BuildScripts/InitramfsScripts/buildInitramFs.sh index 474428e..9e0aa90 100755 --- a/scripts/BuildScripts/InitramfsScripts/buildInitramFs.sh +++ b/scripts/BuildScripts/InitramfsScripts/buildInitramFs.sh @@ -22,18 +22,29 @@ set -e # along with PrawnOS. If not, see . -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 diff --git a/scripts/BuildScripts/KernelScripts/buildAth9k.sh b/scripts/BuildScripts/KernelScripts/buildAth9k.sh new file mode 100755 index 0000000..4a176a3 --- /dev/null +++ b/scripts/BuildScripts/KernelScripts/buildAth9k.sh @@ -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 + +# 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 . + + +if [ -z "$1" ] +then + echo "No build directory supplied" + exit 1 +fi + +BUILD_DIR=$1 + +cd $BUILD_DIR +make toolchain +make -C target_firmware diff --git a/scripts/BuildScripts/KernelScripts/buildKernel.sh b/scripts/BuildScripts/KernelScripts/buildKernel.sh index dcf205b..45f2e26 100755 --- a/scripts/BuildScripts/KernelScripts/buildKernel.sh +++ b/scripts/BuildScripts/KernelScripts/buildKernel.sh @@ -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 +# Copyright (c) 2018-2020 Hal Emmerich # 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 diff --git a/scripts/BuildScripts/KernelScripts/patchKernel.sh b/scripts/BuildScripts/KernelScripts/patchKernel.sh index 1ce09ce..cad1441 100755 --- a/scripts/BuildScripts/KernelScripts/patchKernel.sh +++ b/scripts/BuildScripts/KernelScripts/patchKernel.sh @@ -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 diff --git a/scripts/BuildScripts/PackageScripts/pbuildPackage.sh b/scripts/BuildScripts/PackageScripts/pbuildPackage.sh index 2689351..82e8a99 100755 --- a/scripts/BuildScripts/PackageScripts/pbuildPackage.sh +++ b/scripts/BuildScripts/PackageScripts/pbuildPackage.sh @@ -84,7 +84,7 @@ else for dep in $PACKAGE_LOCAL_BUILD_DEPS ; do \ make build_package BUILD_PACKAGE=$dep -C .. ; \ done - rm $PRAWNOS_LOCAL_APT_REPO/Packages + rm -f $PRAWNOS_LOCAL_APT_REPO/Packages cd $PRAWNOS_LOCAL_APT_REPO && dpkg-scanpackages . /dev/null > Packages echo $PACKAGE_NAME build deps satisfied cd $PACKAGE_DIR diff --git a/scripts/Shared/package_lists.sh b/scripts/Shared/package_lists.sh index 6deb20a..a9244be 100755 --- a/scripts/Shared/package_lists.sh +++ b/scripts/Shared/package_lists.sh @@ -167,10 +167,7 @@ gnome_debs_download=( nautilus nautilus-admin network-manager-gnome - network-manager-gnome network-manager-openvpn - network-manager-openvpn - network-manager-openvpn-gnome network-manager-openvpn-gnome pavucontrol-qt seahorse