Commit before push.
This commit is contained in:
parent
33c5a5499c
commit
95768d9f89
|
|
@ -33,17 +33,17 @@ mkdir -p ${PATCH_DIR}
|
|||
# --directory-prefix=${PATCHES_DIR} \
|
||||
# https://github.com/LibreELEC/LibreELEC.tv/raw/master/projects/Rockchip/patches/linux/default/*.patch
|
||||
cp -a /space/code_repositories/test-kernel-patches/projects/LibreELEC.tv/projects/Rockchip/patches/linux/default/*.patch \
|
||||
${PATCH_DIR}
|
||||
${PATCH_DIR}
|
||||
|
||||
# Pull the upstream sources
|
||||
mkdir -p ${BUILD_DEST}
|
||||
gbp clone \
|
||||
--pristine-tar \
|
||||
--debian-branch=${DEBIAN_BRANCH} \
|
||||
--upstream-branch=${UPSTREAM_BRANCH} \
|
||||
--add-upstream-vcs \
|
||||
--verbose \
|
||||
https://salsa.debian.org/kernel-team/linux.git ${BUILD_DEST}
|
||||
--pristine-tar \
|
||||
--debian-branch=${DEBIAN_BRANCH} \
|
||||
--upstream-branch=${UPSTREAM_BRANCH} \
|
||||
--add-upstream-vcs \
|
||||
--verbose \
|
||||
https://salsa.debian.org/kernel-team/linux.git ${BUILD_DEST}
|
||||
|
||||
pushd ${BUILD_DEST}
|
||||
git checkout ${DEBIAN_BRANCH}
|
||||
|
|
|
|||
1509
020_hyprland.sh
1509
020_hyprland.sh
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,78 @@
|
|||
#!usr/bin/env bash
|
||||
|
||||
# https://github.com/nhchiu/Klipper-on-Orange-Pi-Zero-2
|
||||
|
||||
# Update existing release
|
||||
# apt update --allow-releaseinfo-change && apt dist-upgrade -y
|
||||
apt-get install git virtualenv -y
|
||||
|
||||
# Add the pi user
|
||||
adduser pi
|
||||
adduser pi sudo
|
||||
|
||||
# We need to have klipper, Moonraker, and one of the clients
|
||||
# Klipper is a 3d-Printer firmware.
|
||||
# - [klipper](https://www.klipper3d.org/)
|
||||
# - [klipper install](http://www.klipper3d.org/Installation.html)
|
||||
#
|
||||
# A web user interface
|
||||
# - [Mainsail](https://docs.mainsail.xyz/)
|
||||
# - [Mainsail](https://docs.mainsail.xyz/setup/getting-started/manual-setup)
|
||||
# - [Mainsail git](https://github.com/mainsail-crew/mainsail)
|
||||
#
|
||||
# Fluidd Klipper web interface for managing your 3d printer.
|
||||
# - [Fluidd](https://docs.fluidd.xyz/)
|
||||
# - [Fluidd git](https://github.com/fluidd-core/fluidd)
|
||||
#
|
||||
# Moonraker - API Web Server for Klipper
|
||||
# - [Moonraker](https://moonraker.readthedocs.io/en/latest/)
|
||||
# - [Moonraker install](https://moonraker.readthedocs.io/en/latest/installation/)
|
||||
# - [Moonraker git](https://github.com/Arksine/moonraker)
|
||||
# - [Klipperscreen](https://github.com/jordanruthe/KlipperScreen)
|
||||
# - [Moonraker-Telegram-Bot](https://github.com/nlef/moonraker-telegram-bot)
|
||||
#
|
||||
# PrettyGCode WebGL based GCode preview and simulator
|
||||
# - [PrettyGCode for Klipper](https://github.com/Kragrathea/pgcode)
|
||||
#
|
||||
# Obico 3D printing platform
|
||||
# This is a Moonraker plugin that enables the Klipper-based 3D printers to connect to Obico.
|
||||
# - [Obico Cloud for Klipper](https://github.com/TheSpaghettiDetective/moonraker-obico)
|
||||
# - [Mobileraker's Companion](https://github.com/Clon1998/mobileraker_companion)
|
||||
#
|
||||
# Octoprint is a 3d-Printer firmware.
|
||||
# - [Octoprint](https://docs.octoprint.org/en/master/)
|
||||
# - [Octoprint](https://github.com/OctoPrint/OctoPrint)
|
||||
# - [OctoEverywhere for Klipper](https://octoeverywhere.com/?source=kiauh_readme)
|
||||
# - [OctoApp for Klipper](https://github.com/crysxd/OctoPrint-OctoApp)
|
||||
# installed to make it functional.
|
||||
|
||||
# We can't use this:
|
||||
# this is a systemd based script that uses a tui to ask for input.
|
||||
# [Klipper install and update helper](https://github.com/dw-0/kiauh)
|
||||
|
||||
MainsailOS images includes:
|
||||
[Mainsail](https://github.com/mainsail-crew/mainsail)
|
||||
|
||||
[Klipper](https://github.com/klipper3d/klipper)
|
||||
|
||||
|
||||
Moonraker - API Web Server for Klipper
|
||||
[Moonraker](https://github.com/arksine/moonraker)
|
||||
|
||||
Webcam daemon
|
||||
[Crowsnest](https://github.com/mainsail-crew/crowsnest)
|
||||
|
||||
Keep alive daemon
|
||||
[Sonar](https://github.com/mainsail-crew/sonar)
|
||||
|
||||
Timelapse plugin for Moonraker
|
||||
[Timelapse](https://github.com/mainsail-crew/moonraker-timelapse)
|
||||
|
||||
Preinstalled software dependencies:
|
||||
|
||||
[Measuring Resonances](https://www.klipper3d.org/Measuring_Resonances.html)
|
||||
|
||||
[Katapult](https://github.com/Arksine/katapult) (formerly known as CanBoot)
|
||||
|
||||
KlipperScreen is a touchscreen GUI that interfaces with Klipper via Moonraker.
|
||||
[KlipperScreen](https://github.com/jordanruthe/KlipperScreen/)
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
#/usr/bin/env bash
|
||||
|
||||
# https://github.com/mainsail-crew/crowsnest
|
||||
|
||||
# # crowsnest
|
||||
# A wrapper script for webcam streaming on Raspberry Pi OS Lite images like MainsailOS](https://github.com/mainsail-crew/MainsailOS). Mainly written in bash.
|
||||
|
||||
# https://crowsnest.mainsail.xyz/setup/installation
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
#!/usr/bin
|
||||
# # Fluidd
|
||||
# Fluidd is a free and open-source Klipper web interface for managing your 3d printer.
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# # Mainsail
|
||||
# Makes Klipper more accessible by adding a lightweight, responsive web user
|
||||
# interface, centred around an intuitive and consistent design philosophy.
|
||||
|
||||
# https://docs.mainsail.xyz/setup/getting-started/manual-setup
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# # Moonraker - API Web Server for Klipper
|
||||
#
|
||||
# Moonraker is a Python 3 based web server that exposes APIs with which
|
||||
# client applications may use to interact with the 3D printing firmware
|
||||
# [Klipper](https://github.com/KevinOConnor/klipper). Communication between
|
||||
# the Klippy host and Moonraker is done over a Unix Domain Socket. Tornado
|
||||
# is used to provide Moonraker's server functionality.
|
||||
#
|
||||
# Documentation for users and developers can be found on
|
||||
# [Read the Docs](https://moonraker.readthedocs.io/en/latest/).
|
||||
#
|
||||
# ### Clients
|
||||
#
|
||||
# Note that Moonraker does not come bundled with a client, you will need to
|
||||
# install one. The following clients are currently available:
|
||||
#
|
||||
# - [Mainsail](https://github.com/mainsail-crew/mainsail) by [Mainsail-Crew](https://github.com/mainsail-crew)
|
||||
# - [Fluidd](https://github.com/fluidd-core/fluidd) by Cadriel
|
||||
# - [KlipperScreen](https://github.com/jordanruthe/KlipperScreen) by jordanruthe
|
||||
# - [mooncord](https://github.com/eliteSchwein/mooncord) by eliteSchwein
|
||||
#
|
||||
# ### Raspberry Pi Images
|
||||
#
|
||||
# Moonraker is available pre-installed with the following Raspberry Pi images:
|
||||
#
|
||||
# - [MainsailOS](https://github.com/mainsail-crew/MainsailOS) by [Mainsail-Crew](https://github.com/mainsail-crew)
|
||||
# - Includes Klipper, Moonraker, and Mainsail
|
||||
# - [FluiddPi](https://github.com/fluidd-core/FluiddPi) by Cadriel
|
||||
# - Includes Klipper, Moonraker, and Fluidd
|
||||
|
||||
# [Moonraker install](https://moonraker.readthedocs.io/en/latest/installation/)
|
||||
|
|
@ -1,2 +1,5 @@
|
|||
#!/usr/bin/env bash
|
||||
apt install -y qemu qemu-kvm qemu-utils
|
||||
|
||||
apt install -y qemu qemu-kvm qemu-utils qemu-user-static qemu-user-static binfmt-support
|
||||
|
||||
sudo update-binfmts --enable qemu-aarch64 qemu-arm
|
||||
|
|
|
|||
|
|
@ -0,0 +1,43 @@
|
|||
# the procedure to update sd-card-images repo
|
||||
|
||||
```bash
|
||||
cat .git/config
|
||||
[core]
|
||||
repositoryformatversion = 0
|
||||
filemode = true
|
||||
bare = false
|
||||
logallrefupdates = true
|
||||
[remote "origin"]
|
||||
url = git@git2.ring-zero.co.uk:cyteen/sd-card-images.git
|
||||
fetch = +refs/heads/*:refs/remotes/origin/*
|
||||
[branch "master"]
|
||||
remote = origin
|
||||
merge = refs/heads/master
|
||||
[branch "devuan"]
|
||||
remote = origin
|
||||
merge = refs/heads/devuan
|
||||
[branch "cherry"]
|
||||
remote = origin
|
||||
merge = refs/heads/cherry
|
||||
[branch "add_devuan"]
|
||||
remote = origin
|
||||
merge = refs/heads/add_devuan
|
||||
[remote "upstream"]
|
||||
url = https://github.com/johang/sd-card-images.git
|
||||
fetch = +refs/heads/*:refs/remotes/upstream/*
|
||||
[pull]
|
||||
ff = only
|
||||
|
||||
|
||||
git pull upstream master
|
||||
|
||||
git reset --hard upstream/master
|
||||
|
||||
git push origin master --force
|
||||
|
||||
git branch backup-devuan
|
||||
|
||||
git rebase master
|
||||
|
||||
git push origin devuan --force-with-lease
|
||||
```
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
# Configuration post install for hyprland wm
|
||||
|
||||
## pipewire/wireplumber
|
||||
|
||||
exec-once=pipewire
|
||||
exec-once=wireplumber
|
||||
|
||||
## Portal file chooser
|
||||
|
||||
```bash
|
||||
conf_print_hyprland-portals() {
|
||||
cat <<-EOF
|
||||
[preferred]
|
||||
default=hyprland;gtk
|
||||
org.freedesktop.impl.portal.FileChooser=kde
|
||||
EOF
|
||||
}
|
||||
conf_print_hyprland-portals | tee ~/.config/xdg-desktop-portal/hyprland-portals.conf
|
||||
```
|
||||
|
||||
or use '/usr/share/xdg-desktop-portal/portals.conf'
|
||||
|
|
@ -0,0 +1,84 @@
|
|||
#!/usr/bin/env bash
|
||||
set -x
|
||||
|
||||
# Install deps
|
||||
sudo apt install -y \
|
||||
cmake \
|
||||
dh-cmake \
|
||||
git \
|
||||
build-essential \
|
||||
libcairo2 \
|
||||
libcairo2-dev \
|
||||
libzip4 \
|
||||
libzip-dev \
|
||||
librsvg2-2 \
|
||||
librsvg2-dev
|
||||
|
||||
# Set github user and project name
|
||||
USER="hyprwm"
|
||||
PROJECT="hyprutils"
|
||||
LICENSE="gpl3"
|
||||
HOMEPAGE="https://github.com/hyprwm/hyprlang"
|
||||
BUILD_HOME="/var/tmp/hyprlang-git_build"
|
||||
PACKAGE="hyprutils"
|
||||
VERSION=$(curl "https://api.github.com/repos/${USER}/${PROJECT}/tags?per_page=5" | jq -r '.[0] | .name')
|
||||
VERSION=${VERSION:1} # strip the preceding 'v'
|
||||
SECTION="x11/wm"
|
||||
DEBEMAIL="cyteen@ring-zero.co.uk"
|
||||
DEBFULLNAME="Cyteen May"
|
||||
DESCRIPTION="A small C++ library for utilities in the Hypr* ecosystem."
|
||||
LONG_DESCRIPTION="Hyprutils is a small C++ library for utilities used across the Hypr* ecosystem."
|
||||
|
||||
# Make the BUILD_HOME directory and clone upstream
|
||||
mkdir -p ${BUILD_HOME}
|
||||
cd ${BUILD_HOME} || exit
|
||||
|
||||
git clone https://github.com/${USER}/${PROJECT}.git ${PACKAGE}-${VERSION}
|
||||
|
||||
cd ${PACKAGE}-${VERSION} || exit
|
||||
|
||||
# debianize the BUILD_HOME directory
|
||||
dh_make --createorig --single --native --copyright ${LICENSE} --yes
|
||||
|
||||
# Customize the debian directory values
|
||||
sed -i "s,^\(Description: \).*,\1${DESCRIPTION}," debian/control
|
||||
sed -i 's,^\(Section: \).*,\1'${SECTION}',' debian/control
|
||||
sed -i "s,^\(Maintainer: \).*,\1'${DEBFULLNAME}\ \<${DEBEMAIL}\>'," debian/control
|
||||
sed -i 's,^\(Homepage: \).*,\1'${HOMEPAGE}',' debian/control
|
||||
sed -i "s|.*insert long.*|${LONG_DESCRIPTION}|" debian/control
|
||||
|
||||
cat <<'EOF' >debian/rules
|
||||
#!/usr/bin/make -f
|
||||
|
||||
# Uncomment and adjust the following lines as needed
|
||||
#export DH_VERBOSE = 1
|
||||
#export DEB_BUILD_MAINT_OPTIONS = hardening=+all
|
||||
#export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic
|
||||
#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
|
||||
|
||||
%:
|
||||
dh $@ --buildsystem=cmake
|
||||
|
||||
override_dh_auto_configure:
|
||||
dh_auto_configure -- \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_LIBRARY_ARCHITECTURE="$(DEB_HOST_MULTIARCH)"
|
||||
EOF
|
||||
|
||||
# Build and install Hyprlang using CMake
|
||||
# cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX:PATH=/usr -S . -B ./build
|
||||
# cmake --build ./build --config Release --target all -j$(nproc 2>/dev/null || getconf NPROCESSORS_CONF)
|
||||
# sudo cmake --install build
|
||||
|
||||
cat <<EOF >debian/watch
|
||||
version=4
|
||||
opts=filenamemangle=s/.+\/v?(\d\S+)\.tar\.gz/${PROJECT}-$1\.tar\.gz/ \
|
||||
https://github.com/${USER}/${PROJECT}/tags .*/v?(\d\S+)\.tar\.gz
|
||||
EOF
|
||||
|
||||
dpkg-buildpackage -us -uc -b
|
||||
|
||||
echo ${PACKAGE}_${VERSION}_amd64.deb
|
||||
|
||||
sudo dpkg -i ../${PACKAGE}_${VERSION}_amd64.deb
|
||||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,143 @@
|
|||
# Hyprland for debian
|
||||
|
||||
Here we have a number of scripts to build the dependencies for hyprland tiling
|
||||
wayland compositor.
|
||||
|
||||
Our goal is to have a 'debian' way to build these packages using gitbuildpackage
|
||||
to update from upstream, apply patches in a patch queue branch and output debian
|
||||
packages which can be added to the gitea package repo using the automate/utils
|
||||
helper scripts.
|
||||
|
||||
NB. We have a working example from salsa in [/space/code_repositories/hyprland/](https://salsa.debian.org/debian/hyprland/) that successfully built the 0.36 and upgraded to 0.39.1
|
||||
using these watch files which were missing from the salsa [hyperland](https://salsa.debian.org/debian/hyprland) and [hyperlang](https://salsa.debian.org/debian/hyprlang) repos:
|
||||
|
||||
```bash
|
||||
conf_print_debian-watch_hyprland() {
|
||||
cat <<-'EOF'
|
||||
version=4
|
||||
|
||||
opts=filenamemangle=s/.+\/v?(\d\S*)\.tar\.gz/hyprland-$1\.tar\.gz/ \
|
||||
https://github.com/hyprwm/hyprland/tags .*/v?(\d\S*)\.tar\.gz
|
||||
EOF
|
||||
}
|
||||
# conf_print_debian-watch_hyprland | sudo tee debian/watch
|
||||
```
|
||||
|
||||
This is now included in the salsa hyperlang repo:
|
||||
|
||||
```bash
|
||||
conf_print_debian-watch_hyprlang() {
|
||||
cat <<-'EOF' | tee debian/watch
|
||||
version=4
|
||||
|
||||
opts=filenamemangle=s/.+\/v?(\d\S*)\.tar\.gz/hyprlang-$1\.tar\.gz/ \
|
||||
https://github.com/hyprwm/hyprlang/tags .*/v?(\d\S*)\.tar\.gz
|
||||
EOF
|
||||
}
|
||||
# conf_print_debian-watch_hyprlang | sudo tee debian/watch
|
||||
```
|
||||
|
||||
From phind:
|
||||
|
||||
```bash
|
||||
version=4
|
||||
opts="searchmode=html, filenamemangle=s/.+\/v?(\d+\.\d+)\.tar\.gz/hyprland-protocols-$1.tar.gz/"
|
||||
https://github.com/hyprwm/hyprland-protocols/tags .*/v?(\d+\.\d+)\.tar\.gz
|
||||
|
||||
```
|
||||
|
||||
From salsa repo:
|
||||
|
||||
```bash
|
||||
version=4
|
||||
opts="searchmode=html" \
|
||||
https://github.com/hyprwm/hyprland-protocols/tags \
|
||||
https://github.com/hyprwm/hyprland-protocols/archive/refs/tags/v(\d+)\.(\d+).tar\.gz
|
||||
```
|
||||
|
||||
This did not work for 0.4.0 or 0.4.1
|
||||
|
||||
## resulting packages
|
||||
|
||||
the hyprland build provides:
|
||||
|
||||
- hyprland
|
||||
- hyprland-common
|
||||
- hyprland-completitions (locally added)
|
||||
- hyprland-dev
|
||||
|
||||
the hyperlang build provides:
|
||||
|
||||
- hyprlang
|
||||
- libhyprlang-dev
|
||||
- libhyprlang2
|
||||
|
||||
dpkg -i libudis86-0_0+20221013-1_amd64.deb
|
||||
dpkg -i udcli_0+20221013-1_amd64.deb
|
||||
dpkg -i hyprwayland-scanner_0.3.10-1_amd64.deb
|
||||
dpkg -i libhyprlang2_0.5.2-1_amd64.deb
|
||||
dpkg -i libhyprcursor0_0.1.9-1_amd64.deb
|
||||
dpkg -i libhyprutils0_0.1.5-1_amd64.deb
|
||||
dpkg -i hyprcursor-util_0.1.9-1_amd64.deb
|
||||
dpkg -i hyprland-protocols_0.3.0-1_all.deb
|
||||
dpkg -i hyprland_0.41.2+ds-1_amd64.deb
|
||||
dpkg -i hyprland-backgrounds_0.41.2+ds-1_all.deb
|
||||
dpkg -i hyprpaper_0.7.0-1_amd64.deb
|
||||
so far we have manually updated these from the debian source directory with uscan command from the devscripts package:
|
||||
|
||||
```bash
|
||||
|
||||
conf_print_debian-watch_hyprland | sudo tee debian/watch
|
||||
uscan --no-download --verbose
|
||||
uscan
|
||||
while dquilt push; do dquilt refresh; done
|
||||
dch
|
||||
```
|
||||
|
||||
```bash
|
||||
UPSTREAM_VERSION="0.3.0"
|
||||
LOCAL_VERSION="1"
|
||||
gbp import-orig --uscan
|
||||
gbp pqapply
|
||||
gbp dch -N ${UPSTREAM_VERSION}-${LOCAL_VERSION} -R
|
||||
git add .
|
||||
git commit -m "Update debian/changelog for version ${UPSTREAM_VERSION)-${LOCAL_VERSION}"
|
||||
```
|
||||
|
||||
## build sequence for build from git
|
||||
|
||||
NB these scripts only build a debianized upstream git packages, better to fix the salsa packages.
|
||||
|
||||
- [hyprwayland-scanner](https://salsa.debian.org/debian/hyprland-protocols) - available in debian unstable
|
||||
|
||||
001_hyprwayland-scanner.sh [hyprwayland-scanner - A Hyprland implementation of wayland-scanner, in and for C++.](https://github.com/hyprwm/hyprwayland-scanner)
|
||||
|
||||
- [hyprutils](https://salsa.debian.org/NyxTrail/hyprutils) available in debian
|
||||
|
||||
003_hyprutils.sh [hyprutils - Hyprutils is a small C++ library for utilities used across the Hypr\* ecosystem.](https://github.com/hyprwm/hyprutils)
|
||||
|
||||
- [hyprlang](https://salsa.debian.org/NyxTrail/hyprlang) available in debian
|
||||
|
||||
005_hyprlang.sh [hyprlang - The official implementation library for the hypr config language.](https://github.com/hyprwm/hyprlang)
|
||||
|
||||
- [hypcursor](https://salsa.debian.org/NyxTrail/hyprcursor) available in debian
|
||||
|
||||
007_hyprcursor.sh [hyprcursor - The hyprland cursor format, library and utilities.](https://github.com/hyprwm/hyprcursor)
|
||||
|
||||
- [hyprland-protocols](https://salsa.debian.org/debian/hyprland-protocols) - available in debian unstable
|
||||
|
||||
010_hyprland-protocols.sh [hyprland-protocols - Wayland protocol extensions for Hyprland](https://github.com/hyprwm/hyprland-protocols)
|
||||
|
||||
- [hyprland](https://salsa.debian.org/NyxTrail/hyprland) available in debian
|
||||
|
||||
020_hyprland.sh [Hyprland - Hyprland is a highly customizable dynamic tiling Wayland compositor that doesn't sacrifice on its looks.](https://github.com/hyprwm/Hyprland)
|
||||
|
||||
And a bonus - dot files to configure a pretty hypr (not working yet):
|
||||
|
||||
- [hyprpaper](https://github.com/hyprwm/hyprpaper) - wallpaper utility for Hyprland with the ability to dynamically change wallpapers through sockets.
|
||||
|
||||
- hyprdots
|
||||
|
||||
025_hyprland-hyprdots.sh [hyprland dotfiles to be converted from arch.](https://github.com/prasanthrangan/hyprdots)
|
||||
|
||||
### gitbuildpackage script automate/020_hyprland.sh
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
#!usr/bin/env bash
|
||||
|
||||
for chroot in $(schroot -l --exclude-aliases | grep ^source:); do
|
||||
(sbuild-update -udcar "$chroot" 2>&1)
|
||||
done
|
||||
Loading…
Reference in New Issue