Browse Source

Preparations for repository update

Signed-off-by: falkTX <falktx@falktx.com>
pull/19/merge
falkTX 2 months ago
parent
commit
1213b96a87
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
6 changed files with 53 additions and 91 deletions
  1. +14
    -11
      Repositories.php
  2. +2
    -2
      Repositories:Applications.php
  3. +4
    -48
      Repositories:Extras.php
  4. +21
    -19
      Repositories:FAQ.php
  5. +2
    -2
      Repositories:Plugins.php
  6. +10
    -9
      repo/generate-repo-page.sh

+ 14
- 11
Repositories.php View File

@@ -5,22 +5,28 @@ $PAGE_SOURCE_1 = ARRAY("/Repositories");
$PAGE_SOURCE_2 = ARRAY("Repositories");
include_once("includes/header.php");

$DEBIAN_PACKAGE = "kxstudio-repos_10.0.3_all.deb";
$DEBIAN_PACKAGE = "kxstudio-repos_11.0.1_all.deb";
$DEBIAN_PACKAGE_URL = "https://launchpad.net/~kxstudio-debian/+archive/kxstudio/+files/" . $DEBIAN_PACKAGE;
?>

<div class="box box-description">
<p>
The KXStudio repositories support all Debian versions since <b>10 (Buster)</b> and Ubuntu <b>18.04 (Bionic)</b> or above including Ubuntu 20.04.<br/>
They should work on all Debian-based distributions and variants.<br/>
A computer running intel-based 32bit or 64bit with SSE2 is required,
or alternatively an ARM-based system (32bit with neon-vfpv4 or 64bit).
The KXStudio repositories support all Debian versions since <b>11 (Bookworm)</b> and Ubuntu <b>20.04 (Focal)</b> or above including Ubuntu 22.04.<br/>
They should work on all Debian-based distributions and variants.
</p>
<p>
Once you have the repos installed, you can either manually install individual packages from them or
add the meta-packages to automatically install large sets of recommended packages.<br/>
The only real requirement is it being a computer capable of running <b>x86_64</b> (pretty much everything nowadays)
or an ARM-based system, which can be <b>armhf</b> (ARM 32bit with neon-vfpv4) or <b>aarch64</b> (ARM 64bit).<br/>
Legacy i686 systems (PCs that cannot do 64bit) are not supported.
</p>
<p>
Once you have the repositories enabled, you should first update the software sources (using your preferred GUI or simply running <b>sudo apt update</b>),<br/>
then either manually install individual packages or the meta-packages to automatically get large sets of audio tools and plugins.<br/>
See the <a href="<?php echo $ROOT; ?>/Documentation:Repository:Meta-Packages">Meta-Packages</a> page for more details.<br/>
In either case, we always recommend to install the <b>kxstudio-default-settings</b> package after enabling the repositories.
</p>
<p>
We recommend to install the <b>kxstudio-default-settings</b> package after enabling the repositories.<br/>
This will put in place a few system tweaks useful for audio, these include for example, minimizing swap usage and increasing maximum number of open files.
</p>
<p>
You might also want to check:
@@ -53,9 +59,6 @@ $DEBIAN_PACKAGE_URL = "https://launchpad.net/~kxstudio-debian/+archive/kxstudio/
<span style="color: rgb(110, 110, 110);"># Install required dependencies if needed</span>
sudo apt-get install apt-transport-https gpgv

<span style="color: rgb(110, 110, 110);"># Remove legacy repos</span>
sudo dpkg --purge kxstudio-repos-gcc5

<span style="color: rgb(110, 110, 110);"># Download package file</span>
wget <?php echo $DEBIAN_PACKAGE_URL . "\n"; ?>



+ 2
- 2
Repositories:Applications.php View File

@@ -10,8 +10,8 @@ include_once("includes/header.php");
<p>
This section lists the applications available in the repositories.<br/>
Click on the thumbnail to see the full-size image.<br/>
Individual deb files can be downloaded, requiring at least Debian 10 / Ubuntu 18.04 or superior.<br/>
If a "data" download is listed, it needs to be installed first before the architecture-dependent one.
Individual deb files can be downloaded, requiring at least Debian 11 / Ubuntu 20.04 or superior.<br/>
<b>If a "data" download is listed, it needs to be installed first before the architecture-dependent one</b>.
</p>
<p>
You might also want to check:


+ 4
- 48
Repositories:Extras.php View File

@@ -8,59 +8,15 @@ include_once("includes/header.php");

<div class="box box-description">
<p>
This section contains extra repositories from the KXStudio project.<br/>
As with the main KXStudio repositories, these extra ones also support both Intel-based and ARM-based CPU architectures.
<b>The extra repository is now deprecated and will no longer be updated</b>.
</p>
<p>
You might also want to check:
It is no longer possible to build i386 packages on launchpad PPAs, and as such any system library packages end up broken for multi-arch systems.<br/>
This prevents us from updating, for example, JACK2 without it completely breaking 32bit system compatibility.<br/>
In order to prevent more breakage this repository should no longer be used.
</p>
<ul>
<li><a href="<?php echo $ROOT; ?>/Repositories:Applications">Applications in the repositories</a></li>
<li><a href="<?php echo $ROOT; ?>/Repositories:Plugins">Plugins in the repositories</a></li>
<li><a href="<?php echo $ROOT; ?>/Repositories:FAQ">Frequent asked questions</a></li>
</ul>
</div>

<h3><span class="mw-headline">
<img src="images/ico_ubuntu.png" class="img_text_align" alt=""/> Ubuntu 18.04 and 20.04 specific extras
</span></h3>

<p>
<span style="font-weight:lighter">Repository code:</span> ppa:kxstudio-debian/ubuntus
</p>
<p>
This is a repository/PPA for Ubuntu 18.04 and 20.04 users with a few goodies that cannot be made into generic packages.<br/>
All packages that require system integration or shared libraries that cannot be packaged in a generic way will be put in this repository.
</p>
<p>
<b>This repository is only for Ubuntu 18.04 and 20.04 users!</b>
</p>
<p>
The repository contains: (for both 18.04 and 20.04)
</p>
<ul>
<li>Up-to-date FFADO and JACK2</li>
<li>Patched alsa-driver source to prevent snd-aloop from being loaded as first soundcard</li>
<li>Patched audacious-plugins source to add "ignore-length" option to PSF plugin</li>
<li>Patched pulseaudio source to always install pulseaudio-module-jack (needed for JACK+PulseAudio bridge)</li>
</ul>
<p>
The repository also contains: (specifically for 18.04)
</p>
<ul>
<li>Up-to-date GCC (version 9 at the moment)</li>
<li>FAudio package, needed for Wine-Staging (also updated libstb and libsdl2 as required)</li>
<li>Wine-RT package (an old version, for now)</li>
</ul>
<p>
Enabling this repository can be done with the following:
</p>
<pre>
<span style="color: rgb(110, 110, 110);"># Instructions</span>
sudo add-apt-repository ppa:kxstudio-debian/ubuntus
sudo apt-get update
</pre>

<p><br/></p>

<?php


+ 21
- 19
Repositories:FAQ.php View File

@@ -22,32 +22,34 @@ include_once("includes/header.php");

<h5>How do I activate the KXStudio repos?</h5>
<p>
Just follow the instructions <a href="<?php echo $ROOT; ?>/Repositories">here</a>.
Just follow the instructions <a href="<?php echo $ROOT; ?>/Repositories">here</a>.
</p>

<h5>What computer systems are supported?</h5>
<p>
Any Debian or Ubuntu based system, running GNU/Linux.<br/>
For Debian, version 10 (Buster) is required; on Ubuntu, 18.04 (Bionic).<br/>
<br style="line-height:0.5em"/>
Intel-based and ARM-based systems are supported, 32 and 64bit for both.<br/>
For Intel-based systems a SSE2 capable CPU is required, while for ARM systems it is a neon-vfpv4 capable CPU.
Any modern Debian or Ubuntu based system, running GNU/Linux.<br/>
For Debian, version 11 (Bookworm) is required; on Ubuntu, 20.04 (Focal).<br/>
Anything more recent than this should be compatible.<br/>
<br style="line-height:0.5em"/>
The only real requirement is it being a computer capable of running <b>x86_64</b> (pretty much everything nowadays)
or an ARM-based system, which can be <b>armhf</b> (ARM 32bit with neon-vfpv4) or <b>aarch64</b> (ARM 64bit).<br/>
Legacy i686 systems (PCs that cannot do 64bit) are not supported.
</p>

<h5>I found an issue with a package, where can I report it?</h5>
<p>
Bug reports and package requests should be posted in the Github tracker
<a href="https://github.com/KXStudio/Repository/issues" target="_blank">here</a>.
Bug reports and package requests should be posted in the Github tracker
<a href="https://github.com/KXStudio/Repository/issues" target="_blank">here</a>.
</p>

<h5>Can I make a request for this new awesome-super-great application?</h5>
<p>
You can, but it will likely not be answered. The KXStudio repositories focus on audio plugins, not general applications.
You can, but it will likely not be answered. The KXStudio repositories focus on audio plugins, not general applications.
</p>

<h5>Why are applications not the focus for the KXStudio repos?</h5>
<p>
A few reasons actually:
A few reasons actually:
</p>
<ul>
<li>Applications can easily have flatpaks, snaps or whatever.<br/>
@@ -61,13 +63,13 @@ A few reasons actually:

<h5>Why are plugins tricky for general distributions?</h5>
<p>
As you likely already know, we run a lot of audio plugins at the same time, all in the same process space.
If a single plugin misbehaves or crashes, it usually brings down the entire host or DAW.<br/>
As you likely already know, we run a lot of audio plugins at the same time, all in the same process space.
If a single plugin misbehaves or crashes, it usually brings down the entire host or DAW.<br/>
</p>
<p>
So it is vital that we build the plugins in a way to minimize issues.
They must be self-contained and never conflict with each other (as much as possible anyway).
This entails, for example:
So it is vital that we build the plugins in a way to minimize issues.
They must be self-contained and never conflict with each other (as much as possible anyway).
This entails, for example:
</p>
<ul>
<li><b>Building all plugin code and its dependencies with hidden symbols</b>, so only the plugin-format-defined entry-points are visible within a shared object.<br/>
@@ -92,10 +94,10 @@ This entails, for example:

<h5>Why are packages prefixed with "5:" that bumps it over regular packages from other sources?</h5>
<p>
This is for protection of those running the KXStudio repositories in rolling-release style distributions.<br/>
An update from the distribution which does not follow KXStudio rules is a potential source of issues (see the points above).<br/>
Better to have something stable that you know won't break during updates.<br/>
(The focus on plugins in the repos means it is much less work to maintain them, and this critical. The KXStudio repos should be up-to-date as much as possible)
This is for protection of those running the KXStudio repositories in rolling-release style distributions.<br/>
An update from the distribution which does not follow KXStudio rules is a potential source of issues (see the points above).<br/>
Better to have something stable that you know won't break during updates.<br/>
(The focus on plugins in the repos means it is much less work to maintain them, and this critical. The KXStudio repos should be up-to-date as much as possible)
</p>

<p><br/></p>


+ 2
- 2
Repositories:Plugins.php View File

@@ -10,8 +10,8 @@ include_once("includes/header.php");
<p>
This section lists the audio plugins available in the repositories.<br/>
Click on the thumbnail to see the full-size image.<br/>
Individual deb files can be downloaded, requiring at least Debian 10 / Ubuntu 18.04 or superior.<br/>
If a "data" download is listed, it needs to be installed first before the architecture-dependent one.
Individual deb files can be downloaded, requiring at least Debian 11 / Ubuntu 20.04 or superior.<br/>
<b>If a "data" download is listed, it needs to be installed first before the architecture-dependent one</b>.
</p>
<p>
You might also want to check:


+ 10
- 9
repo/generate-repo-page.sh View File

@@ -16,6 +16,7 @@ PACKAGES_BLACKLIST=("carla-bridge-linux32" "carla-bridge-linux64" "distrho-src"
PACKAGES_WHITELIST=("cadence" "catia" "claudia" "impro-visor")
PACKAGES_SEPARATE_DATA=("hybridreverb2")
PACKAGES_BASE_URL="http://ppa.launchpad.net/kxstudio-debian/${REPO_TARGET}/ubuntu/"
PACKAGES_BASE_HTTPS="https://launchpad.net/~kxstudio-debian/+archive//${REPO_TARGET}/+files/"

rm -f Packages.gz Packages
mkdir -p pool-cache
@@ -226,33 +227,33 @@ for PACKAGE in ${PACKAGES[@]}; do

if echo "${PACKAGE_FILENAME}" | grep -q "carla-bridge-win64_"; then
# amd64
echo "<a href=\"${PACKAGES_BASE_URL}${PACKAGE_FILENAME}\" target=\"_blank\">amd64</a>&nbsp;&nbsp;"
echo "<a href=\"${PACKAGES_BASE_HTTPS}${PACKAGE_FILENAME}\" target=\"_blank\">amd64</a>&nbsp;&nbsp;"
# i386
PACKAGE_FILENAME_ARCHED=$(echo "${PACKAGE_FILENAME}" | sed "s/-win64_/-win32_/g" | sed "s/_amd64.deb/_i386.deb/g")
echo "<a href=\"${PACKAGES_BASE_URL}${PACKAGE_FILENAME_ARCHED}\" target=\"_blank\">i386</a>&nbsp;&nbsp;(install both)"
echo "<a href=\"${PACKAGES_BASE_HTTPS}${PACKAGE_FILENAME_ARCHED}\" target=\"_blank\">i386</a>&nbsp;&nbsp;(install both)"

elif echo "${PACKAGE_FILENAME}" | grep -q "carla-vst-wine_"; then
# amd64
echo "<a href=\"${PACKAGES_BASE_URL}${PACKAGE_FILENAME}\" target=\"_blank\">amd64</a>&nbsp;&nbsp;"
echo "<a href=\"${PACKAGES_BASE_HTTPS}${PACKAGE_FILENAME}\" target=\"_blank\">amd64</a>&nbsp;&nbsp;"
# i386
PACKAGE_FILENAME_ARCHED=$(echo "${PACKAGE_FILENAME}" | sed "s/_amd64.deb/_i386.deb/g")
echo "<a href=\"${PACKAGES_BASE_URL}${PACKAGE_FILENAME_ARCHED}\" target=\"_blank\">i386</a>&nbsp;&nbsp;"
echo "<a href=\"${PACKAGES_BASE_HTTPS}${PACKAGE_FILENAME_ARCHED}\" target=\"_blank\">i386</a>&nbsp;&nbsp;"

elif echo "${PACKAGE_FILENAME}" | grep -q "wineasio_"; then
# amd64
PACKAGE_FILENAME_ARCHED=$(echo "${PACKAGE_FILENAME}" | sed "s/wineasio_/wineasio-amd64_/g")
echo "<a href=\"${PACKAGES_BASE_URL}${PACKAGE_FILENAME_ARCHED}\" target=\"_blank\">amd64</a>&nbsp;&nbsp;"
echo "<a href=\"${PACKAGES_BASE_HTTPS}${PACKAGE_FILENAME_ARCHED}\" target=\"_blank\">amd64</a>&nbsp;&nbsp;"
# i386
PACKAGE_FILENAME_ARCHED=$(echo "${PACKAGE_FILENAME}" | sed "s/wineasio_/wineasio-i386_/g" | sed "s/_amd64.deb/_i386.deb/g")
echo "<a href=\"${PACKAGES_BASE_URL}${PACKAGE_FILENAME_ARCHED}\" target=\"_blank\">i386</a>&nbsp;&nbsp;"
echo "<a href=\"${PACKAGES_BASE_HTTPS}${PACKAGE_FILENAME_ARCHED}\" target=\"_blank\">i386</a>&nbsp;&nbsp;"

elif echo "${PACKAGE_FILENAME}" | grep -q "_all.deb"; then
echo "<a href=\"${PACKAGES_BASE_URL}${PACKAGE_FILENAME}\" target=\"_blank\">all</a>&nbsp;&nbsp;"
echo "<a href=\"${PACKAGES_BASE_HTTPS}${PACKAGE_FILENAME}\" target=\"_blank\">all</a>&nbsp;&nbsp;"

else
for ARCH in ${PACKAGES_ARCHS[@]}; do
PACKAGE_FILENAME_ARCHED=$(echo "${PACKAGE_FILENAME}" | sed "s/_amd64.deb/_${ARCH}.deb/g")
echo "<a href=\"${PACKAGES_BASE_URL}${PACKAGE_FILENAME_ARCHED}\" target=\"_blank\">${ARCH}</a>&nbsp;&nbsp;"
echo "<a href=\"${PACKAGES_BASE_HTTPS}${PACKAGE_FILENAME_ARCHED}\" target=\"_blank\">${ARCH}</a>&nbsp;&nbsp;"
done
fi

@@ -262,7 +263,7 @@ for PACKAGE in ${PACKAGES[@]}; do
else
PACKAGE_FILENAME_DATA=$(echo "${PACKAGE_FILENAME}" | sed "s|/${PACKAGE}_|/${PACKAGE_DATA}_|g" | sed "s/_amd64.deb/_all.deb/g")
fi
echo "<a href=\"${PACKAGES_BASE_URL}${PACKAGE_FILENAME_DATA}\" target=\"_blank\">data</a>"
echo "<a href=\"${PACKAGES_BASE_HTTPS}${PACKAGE_FILENAME_DATA}\" target=\"_blank\">data</a>"
fi
echo "</td></tr>"
echo "</table></div></div>"


Loading…
Cancel
Save