#apt-swarm - An APT repository for the Swarm!

1 messages · Page 1 of 1 (latest)

keen raven
#

Hi Swarm! neuroWave

A couple days ago I created an APT repository for the Swarm to use for their projects!
This should allow Debian/Ubuntu users to download and install packages for their Swarm projects easily!

Follow the instructions on this page to get yourself set up, then download packages!

(Currently only has the SwarmFM desktop player, but...)

That's not the only part! We need you to help us with populating this repository! If you have or know of some Linux apps that can be packaged as .deb files, and you're willing to package them, we invite you to contribute starting from this page! Together, we can create the Swarm APT repository!

Hope to see you there!

Maintainers: @keen raven, @rose elm

#

While we're looking for any related packages and welcome them all...

Packages of particular interest:

  • Game Jam 2023/2024 games
  • Neuro API integrations (if possible)

(source: me, lmao)

frosty heron
#

Peak
Sadly I don't think my stuff can be put in packages, but still cool (most of my programs are just for my server anyway)
Just wondering, I assume this thing works on Ubuntu-based distros like Mint as well

keen raven
#

also wdym most of your stuff can't be put into packages

frosty heron
#

How would you put Neuro RVC or NeuroSynth into a package?

keen raven
#

depends

frosty heron
#

Neuro RVC and NeuroSynth are just models, with Neuro RVC you would basically have to bundle the entirety of Applio with Neuro RVC already installed, with NeuroSynth there doesn't seem to be a way to do it consistently

keen raven
#

I mean you could also host the models server-side if you don't mind the servers potentially catching on fire neurOMEGALUL

frosty heron
#

I don't think that's a good idea, especially with NeuroSynth, which is very intensive

#

I don't know if the software even supports remote inference

peak relic
#

I'm not sure if hosting the package files as part of the repo is a good idea, the repo will forever grow in size as packages get uploaded, including updates
interesting project though, a central repo for swarm projects would be awesome
-# also not Nix, literally unusable neuroSMH

keen raven
peak relic
#

put whatever the Debian equivalent of a PKGBUILD is in the repo
put the .deb files in S3 or on a VPS with a lot of storage or something

keen raven
#

the main problem would be verifying authenticity after-the-fact but I suppose that can be figured out later

#

lemme have a think

peak relic
#

the other way around, a custom domain for GitHub Pages, should work

#

then, if you want to change the infrastructure in any way, you can update that to point somewhere else

keen raven
#

sure, ig

#

give me a sec

#

tho the problem is my current domain is expiring soon and I want to switch it

#

because my current domain I got for free and renewing it is $40usd

#

and idk abt you but I am NOT paying that

peak relic
#

yeah no that's expensive neurOMEGALUL

keen raven
#

yup

#

Actually, let me see if tomorrow I can get a new domain and give myself 6 months of domain transfer time

#

if I can, I should be able to start serving using my new domain immediately and start phasing out my current one

keen raven
woven flume
#

Hi guys, what version of gtk does the swarmfm desktop app depend on?
-# i went to the git repo, found the file, debtapped it so i can install on arch, and it said that gtk is not a valid package name and told me to select between gtk2 gtk3 and gtk4

peak relic
#

never used debtap before but it really should've picked up on this LULE

woven flume
#

guessed it would be gtk3 but debtap didnt say anything

rose elm
#

Swarmfm player is slightly broken with the YouTube being banned

prisma hound
#

Odds are you'd be doing something similar to the discord package because IIRC that unpacks the deb and packages that.

peak relic
#

if the official distribution is a .deb then yeah, that's likely the way to go

#

for most swarm-related apps I'd expect it to be either source code in a GitHub repo or an archive on itch.io or something

prisma hound
#

I say this considering I pinged over the #1336984748882399242 channel. I'd imagine not a lot of those will be oss

#

I might try and package some of my stuff for practice on a nix flake, including my game jam entry.

peak relic
#

after an in depth survey of a whole 6 itch.io game jam games I have concluded that they're either not packaged for Linux or are a zip containing the game data with binaries

prisma hound
#

-# Considering I used a nix-shell while developing this should be easy

#

I just included source code in my upload

peak relic
prisma hound
#

python executable moment

prisma hound
#

I'll have to ask on A neuro who can't sing IIRC native works and there is a github with the source, but better to ask the lead programmer on that one.

brittle beacon
#

hello

#

what is happening here?

#

packaga swarm games on linux?

prisma hound
brittle beacon
#

sure i have the source code still

#

now that you mention it i should probably put it up on github for archiving

prisma hound
#

apt install a-neuro-who-cant-sing
that's our goal neuroTroll

frosty heron
#

And I assume to have a script you can run to start it from the command line

#

Since the game is Python, I'm gonna assume it'll have to somehow have the package depend on Python and some Python packages

prisma hound
#

Either we bundle or just run python, for nix python would be easier (minus packaging a dep) but for debian it might be better to bundle.

peak relic
# brittle beacon sure i have the source code still

realistically I'm probably not gonna package this, but just for reference since you're already here, does that game only run through pygbag or also natively?
I know your engine works natively too, just not sure if you made any modifications for the game jam that would break it

brittle beacon
#

runs nativly and in web

#

ah shit its still private

#

gimme a sec

#

ok should be good now

#

the code is pretty shit but do with it what u want

#

to run nativly just run the main.py like any normal python script. to run in browser there is that command at the top of the script which you need to use to compile

#

depndencies are just pygame, zengl, numpy, pillow and asynchio should be included with base python

#

idk how this apt repository stuff works so ill leave it up to yall

keen raven
brittle beacon
#

ah

rose elm
#

Hey that's me!

brittle beacon
#

ok ill see if i can get it to work

#

i dont use linux so i wont be able to test it tho

rose elm
#

If you need help, or are confused, I don't mind a ping

brittle beacon
keen raven
brittle beacon
#

how am i supposed to turn my files + needed deps into a .deb file?

#

it just says build your files

#

from what i can find online i need ubuntu?

keen raven
brittle beacon
#

pygbag

#

cuz of opengl

keen raven
#

oh hmm

#

give me a sec then

#

@brittle beacon if you haven't already, you'll need to set up a debian/ubuntu install

brittle beacon
#

or well, pygbag for the web version, it runs nativly too via just python

keen raven
#

to test it locally

keen raven
brittle beacon
keen raven
rose elm
#

python is a weird one

brittle beacon
keen raven
#

ok

#

wsl should work fine

rose elm
brittle beacon
#

thanks

keen raven
brittle beacon
#

@prisma hound i cant get it to work on wsl, did native ever work on your end for the game-jam?

#

i keep running into bugs that dont matter in browser or a normal desktop but do happen in wsl

#

for example, it cant find webgl, and not having an audio device leads to an immediate crash apparently in native

#

OSError: libEGL.so: cannot open shared object file: No such file or directory
and
pygame.error: dsp: No such audio device

#

i dont really feel like debugging this atm so ye

#

also i reached 10k fps on the vulkan thing while you're here

keen raven
#

oh testing won't work in wsl neurOMEGALUL

#

wsl lacks a gui iirc

brittle beacon
#

Does that work?

rose elm
#

it might, do you want me to just run the python?

brittle beacon
#

Sure

#

Just main.py if you have the dependancies shoukd work

rose elm
brittle beacon
#

Ye

#

I meant that as a seperate part

#

depndencies are just pygame, zengl, numpy, pillow (and asynchio should be included with base python)

rose elm
#

oh, i see

brittle beacon
#

Sorry for the confusion lol

rose elm
#

all good lol

#

game seems to run fine on linux

brittle beacon
rose elm
#

i just trapped myself in the chair

#

cursor trapping doesnt seem to work well after tabbing out

keen raven
#

lmao

brittle beacon
#

Ye the cursor thing was made in 2 hours

#

Not my best work but we ran out of time

rose elm
#

all good

#

game works, and the cursor leaving the window isn't that bad

#

you did 3d in pygame, no clue how

brittle beacon
#

Just opengl

#

Pygame is only there for audio and the window tbh

rose elm
#

ah

#

game fully runs!

brittle beacon
prisma hound
brittle beacon
keen raven
#

i'm working on figuring out git submodules for building this instead of committing binary blobs. For the record I didnt like it either but until being reminded submodules existed I didnt really have another option for reasons

this may take a while tho

rose elm
#

Would a org with a repo for each package building the deb into releases, that could then be fetched work better?

keen raven
#

but I was thinking something else

#

I'll DM you later about it, gotta fix my bloody nose and do some other stuff first

#

nvm

brittle beacon
#

Ye the binary blobs were an inbetween for the gltf libeary not working in web

#

Now that i know c i could make one myself i guess

peak relic
keen raven
#

also submodules is something I've dabbled in the past before

#

so I think I'm at least ok

peak relic
#

submodules aren't hard, they just make working with Git repos more annoying in general

peak relic
keen raven
#

I live in masochism to cure my depression

#

so making things work in a more annoying way is very fun for some reason

keen raven
#

should have mentioned, bit stupid tho

peak relic
#

OhISee you're planning to mirror the source code for all packages?

keen raven
#

or debit cards either, idfk why and I've asked multiple times why

keen raven
#

since we can just use debian/ for build files and build everything that way

#

if a repository doesn't already have debian/, it's likely to never be touched by upstream maintainers, and if it does, then it usually indicates it's at least been tested on a deb-based system

peak relic
# keen raven essentially

that still doesn't seem like a great idea because of how many packages will have a lot of binary assets, but yeah, you'll 100% want separate repos then NODDERS
though submodules still seem like a bad idea because you'd still need to fetch all of those large repos

keen raven
#

Maybe the fetch time would suck at the beginning since I need to test it, but after that I really do not care

#

unless there's something else with submodule fetch I'm missing NeuroClueless

peak relic
#

it'll as always fetch the entire history of any submodule, but updates especially for game jam games are rare so that should be fine

keen raven
#

Unless a game jam game is played on stream and bugs are found I really don't expect more updates at this point

keen raven
peak relic
#

tbh as long as you aren't storing the .debs directly in the repo anymore most solutions will be okay neurOMEGALUL

peak relic
#

never needed it for a submodule but it should work there too

keen raven
keen raven
#

But I do want to give R2 a try, not only seems interesting but also wouldn't necessarily require separate repos all the time

maybe some time I will experiment with that using a snapshot of the repo

keen raven
#

repo is now updated -> apt-swarm.ktrain5369.dev/repo is the new link

#

and yes we're still working on the whole "how to not store binaries in the repo" thing

we have a solution tho

brittle beacon
#

You dont have to do all this lol

frosty heron
keen raven
#

I think I got something to work on the non-binary branch

#

(thanks to @rose elm who spent a gruelling amount of time working on the external-to-repo stuff neuroPray)

peak relic
#

NeurOhISee fetching the .debs from releases on the referenced repos
should work until the combined size of all packages becomes larger than whatever limit GitHub has on the CI workspace

#

but right now I think you'll run into the limits of GitHub Pages anyway before that happens

keen raven
peak relic
#

nodd I think the non-binary branch is fine as-is for now

#

just gotta keep an eye on the repo size

keen raven
#

repo size shouldn't be an issue

there isn't a limit on the CI workspace size iirc but if there is then pages is more of an issue than that

peak relic
#

yeah, I meant the GitHub Pages repo neuroTehe

keen raven
#

oh

peak relic
#

the main repo should be good now

keen raven
peak relic
#

except for the old commits that still have the .debs but that's not too bad

#

probably not worth a force push

keen raven
#

I was considering force pushing to purge them but honestly idgaf

peak relic
#

-# NUR = nuero

prisma hound
#

Hard agree, and thanks for packaging our game

keen raven
peak relic
#

it's fine, it's not really doubled
the Nix repo is significantly easier to do than what you're attempting here nodd

keen raven
#

I moreso was implying unnecessary effort

#

but yeah not actually doubled effort

keen raven
#

non-binary branch merged

#

also should probs mention docs are currently outdated because I forgot to give them an update lol

keen raven
#

SO, apparently I was stupid enough to use curly braces instead of round brackets...

silk oracle
rose elm
#

Where the $40 renewal part go

keen raven
#

still have it until end of this year

rose elm
#

No, the message you replied too had a part about a $40 renewal iirc

keen raven
#

?

#

it was a reply to a reply to a message from me complaining that my currenent domain is $40 to renew

rose elm
#

I mean the message was edited

#

Maybe I'm stupid and tired

#

Its prob that

keen raven
#

lmao

frank willow
peak relic
frank willow
#

in the future it might contain private repositories sooo, yeah!

peak relic
frank willow
#

no, I meant uhm the source code, not the apt repository

#

i was so confused when you said it is, and linked an package repository instead of the source

peak relic
#

that GitHub repo builds the apt repo in CI

frank willow
#

waht

#

im confused

prisma hound
#

Upstream doesn't have a build script, it just has source code

peak relic
#

ye, the Debs are in GitHub releases

#

the main repo just takes them and puts them in GitHub Pages in the right structure for apt to consume

prisma hound
rose elm
#

Above is correct, current system is to prevent malware, I don't think anyone uses it though

keen raven
#

btw I forgot to assign this to an R2 bucket as a test run so uhhh

#

fun

frank willow
frank willow
#

waht

#

then what about all the people saying it is the source code

keen raven
#

its the source

#

but there is no code

#

also there is no such thing as apt on windows

frosty heron
keen raven
#

you have to use smth like chocolatey

#

and iirc not only does that require different file types, but also requires different repo structure

frank willow
frosty heron
#

If you want to make it for Windows you're gonna have to rewrite a lot of software

keen raven
rose elm
#

seems to be for windows

frank willow
keen raven
rose elm
frosty heron
frank willow
rose elm
#

It great for linux packages, but thats about it

keen raven
rose elm
#

And even then, theres only 2 packages in it

frank willow
#

I'll post neuro-os to it, and other neuro integrations I'm working on ig

keen raven
#

yeah

#

isnt neuro-os for windows

rose elm
#

If you need help with packaging it, give me a ping

keen raven
#

you cant post windows stuff onto an apt repo

#

also should I migrate the workflow to be based on cloudflare r2 instead of github pages

rose elm
#

no

keen raven
#

alright then

rose elm
#

I think I might be the only one who has it on a linux system, and pages works fine

frank willow
keen raven
#

maybe uh

#

get neuro-os & windows-api to be built via github actions first...

frank willow
#

Yeah....

#

I hopefully fixed it

keen raven
#

uh

#

isnt this supposed to be apt-swarm's thread

rose elm
#

i believe so

keen raven
#

anyways

rose elm
#

thats what it says

frank willow
keen raven
#

I probably will toy with a winget/chocolatey version (probs winget) but definitely aint pushing that for prod anytime soon

rose elm
#

Id like to find a way to get more packages, so this might be useful

#

Maybe some of the SDK Tools? Would have to get permission first

frank willow
#

actually, is it possible to post private packages?

rose elm
#

I mean, right now we try to have it split into auditable code in repos we have some power over (just to prevent malware getting in), but it might be doable

keen raven
keen raven
#

mainly the typescript-based tools

frank willow
keen raven
#

possible but no

rose elm
keen raven
#

oh wait

#

we can just

#

set a fucking dependency

#

lmfao

rose elm
#

yes!

keen raven
#

insert hika stupid sticker here

rose elm
keen raven
#

last published 7 years ago neuroDespair

rose elm
#

905 weekly downloads tho

#

Most of the stuff it doesn't shouldnt really change

keen raven
#

true

rose elm
#

I dont think it supports typescript, however

keen raven
#

transpile to js first and then node-deb it mhm

rose elm
#

I think it really just is a fancy template system

muted eagle
#

yeah better debian then ubuntu

muted eagle
#

trying to get the swarm plsyer working on WSL debian. it shows a black window. gonna try unbuntu wsl next. I found the url, that that all the player is? the stream and twitch chat?

verbal oracle
#

yeah

#

I havent been able to work much on it

rose elm
keen raven
#

did something happen here?

rose elm
#

I had to send a message to refollow the channel