moonpiedumplings

joined 1 year ago
[–] moonpiedumplings 1 points 1 week ago* (last edited 1 week ago) (2 children)

Did you use flux 1, or flux 2?

Flux 2 is a complete rewrite, and is basically a different app.

[–] moonpiedumplings 1 points 1 week ago* (last edited 1 week ago) (5 children)

Does forgejo really have an integrated CI/CD? I see this article, but it says it was put in beta, and no real notes after that. Although, it does look like the forgejo runner is a fork of https://github.com/nektos/act, which is a tool designed to be compatible with Github Actions, so that looks promising.

flux, Argo (better than flux)

Why Argo better than flux? The only real difference I know about is that argo has a web GUI built in, whereas flux does not.

[–] moonpiedumplings 2 points 1 week ago* (last edited 1 week ago) (1 children)

Is there a specific android app you need?

https://gitlab.com/android_translation_layer/android_translation_layer/

And of course waydroid. Both these solutions let you run android app on Linux, but like wine, they won't work for every app.

Waydroid probably works for all apps not dependent on google though. But it's more difficult to set up than the android translation layer.

[–] moonpiedumplings 1 points 1 week ago (1 children)

Debian already has docker packaged. That's more convenient.

[–] moonpiedumplings 5 points 1 week ago (3 children)

Debian with the docker convenience script.

They seem to be moving away from this, and it's not longer the first option on their install page

On their debian page

Use a convenience script. Only recommended for testing and development environments

Also, it should be noted about the first option they recommend, Docker Desktop, that Docker Desktop is proprietary.

I recommend just getting the docker.io and docker-compose from debian's repositories.

[–] moonpiedumplings 19 points 1 week ago* (last edited 1 week ago) (1 children)

Ubuntu in WSL comes with systemd enabled. Debian doesn't, and you have to enable it yourself.

That's why I chose to have people use Ubuntu in WSL, despite the other downsides. One less step to setup a Linux environment on Windows makes the process smoother.

[–] moonpiedumplings 4 points 1 week ago

Wish I could transcend into declarativity but the thread’s nix survivor ratio is grim

Yeah lol.

I will say, that for my server, I decided to use kubernetes + fluxcd for declaratively. My entire kubernetes "state" is declared in a git repo, and this is the popular, industry standard for things like this, called GitOps. It makes it very easy to add an app, since it's just adding a folder + some new config files. And unlike Nix, Kubernetes and Flux are very well documented with much tooling as well. Nix doesn't really have a working LSP or good code autocomplete, but with kubernetes, I can just start typing in a yaml file and then hit tab and it spits out the template for me. Code autocompletion with kubernetes feels much more similar to the tooling of other, more mature tooling

It's not as declarative as nix though. There are things missing, like OCI containers could theoretically shift if you don't rely on hashes and some other nitpicks. But declarativity is a spectrum, and I feel like, outside of scientific scenarios (think simulations where versioning, hardware, runtime etc being the same is very important), I think many non-nixos solutions are declarative enough.

[–] moonpiedumplings 3 points 1 week ago* (last edited 3 days ago)

Advice online seemed like i needed to basically create a nix flake for the app. I still havent gotten it installed because i have no idea what nix flakes are.

So, the problem is that flakes are technically an "experimental" feature, and thus are not allowed to be included as a primary solution in the official documentation. But, basically everybody uses flakes, so it leads to this crazy documentation split, and is a big part of why documentation on Nix is so bad.

Some stuff can only be done with flakes, some stuff only with non-flakes and you have to figure out which is which on your own, while also dealing with the poor documentation for either.

The advice you received was wrong. You could also use a combination of a default.nix file and a shell.nix file to create a package and development environment for your app. But, the documentation is so poor that it's unlikely you will learn this, and figuring out how to do this on your own, is again, a massive time sink.

[–] moonpiedumplings 3 points 1 week ago* (last edited 1 week ago) (2 children)

So, I use Arch, but I don't use the AUR at all. Instead, I use nixpkgs to get stuff (admittedly only like 3 packages) not in the Arch repos.

The main reason for this is the quality of AUR packages. Although I don't really fear a malicious package, I do remember hearing about a package that moved a users /bin to /opt during the install phase.

Something like that is literally impossible with Nix, due to the way that applications aren't really installed to the system. But, nixpkgs also requires some level of vetting the package quality, which is also nice.

I also use nix for managing all my development environments. For example, my blog github repo, has a few nix files at it's root, and you should just be able to type nix-shell in folder, and then you will get an identical environment to me.

declarative rollbackable immutability sounds really freakin’ AWESOME

I have BTRFS snapshots set up, and with grub-btrfs, I can even boot from them and revert to an older kernel (my /boot is stored on BTRFS).

However, I have given up on NixOS, for many reasons. The documentation is very poor, and it's more complexity than it's worth, to make my whole OS reproducible, rather than just my development environments. In addition to that, their are also issues with running certain apps that expect to see a normal FIlesystem Hierarchy, which nix does not provide. Although you can work around this with stuff like steam-run or creating a fake FHS using nix, I would rather not play that game.

But, considering I installed some stuff in an Ubuntu 22 distrobox recently, because that was what VScode and Unity official provide repos for, maybe this doesn't really matter. You can probably use distrobox on Nixos, but I've seen issues about GPU acceleration with distrobox (and other non-nix apps) as well.

EDIT: I lied, I use the chaotic aur for some things.

[–] moonpiedumplings 1 points 1 week ago* (last edited 1 week ago) (1 children)

You could consider just using -v, but of the folder one leve above the cloud drive. You shouldn't need most or the other options, or the two commands,

[–] moonpiedumplings 4 points 2 weeks ago* (last edited 1 week ago)

OP seems to be trying to install older projects, rather than creating a new project.

[–] moonpiedumplings 2 points 2 weeks ago

Oops... my bad. In my earlier comment I assumed that this would be a Fedora/Ublue based distro, rather than an Arch one. Arch doesn't have RPM ostree either (which makes me dislike it as a choice for an immutable distro).

But, it's highly likely that with the steam deck and other projects, there is already an ecosystem for immutable Arch, and a minimal base system to start is advantageous, as Possibly Linux said.

 

cross-posted from: https://programming.dev/post/5669401

docker-tcp-switchboard is pretty good, but it has two problems for me:

  • Doesn't support non-ssh connections
  • Containers, not virtual machines

I am setting up a simple CTF for my college's cybersecurity club, and I want each competitor to be isolated to their own virtual machine. Normally I'd use containers, but they don't really work for this, because it's a container escape ctf...

My idea is to deploy linuxserver/webtop, as the entry point for the CTF, (with the insecure option enabled, if you know what I mean), but but it only supports one user at a time, if multiple users attempt to connect, they all see the same X session.

I don't have too much time, so I don't want to write a custom solution. If worst comes to worst, then I will just put a virtual machine on each of the desktops in the shared lab.

Any ideas?

 

docker-tcp-switchboard is pretty good, but it has two problems for me:

  • Doesn't support non-ssh connections
  • Containers, not virtual machines

I am setting up a simple CTF for my college's cybersecurity club, and I want each competitor to be isolated to their own virtual machine. Normally I'd use containers, but they don't really work for this, because it's a container escape ctf...

My idea is to deploy linuxserver/webtop, as the entry point for the CTF, (with the insecure option enabled, if you know what I mean), but but it only supports one user at a time, if multiple users attempt to connect, they all see the same X session.

I don't have too much time, so I don't want to write a custom solution. If worst comes to worst, then I will just put a virtual machine on each of the desktops in the shared lab.

Any ideas?

 

So basically, my setup has everything encrypted except /boot/efi. This means that /boot/grub is encrypted, along with my kernels.

I am now attempting to get secure boot setup, to lock some stuff, down, but I encountered this issue: https://bbs.archlinux.org/viewtopic.php?id=282076

Now I could sign the font files... but I don't want to. Font files and grub config are located under /boot/grub, and therefore encrypted. An attacker doing something like removing my hard drive would not be able to modify them.

I don't want to go through the effort of encrypting font files, does anyone know if there is a version of grub that doesn't do this?

Actually, preferably, I would like a version of grub that doesn't verify ANYTHING. Since everything but grub's efi file is encrypted, it would be so much simpler to only do secure boot for that.

And yes, I do understand there are security benefits to being able to prevent an attacker that has gained some level of running access to do something like replacing your kernel. But I'm less concerned about that vector of attack, I would simply like to make it so that my laptops aren't affected by evil maid attacks, without losing benefits from timeshift or whatnot.

I found the specific commit where grub enforces verification of font files: https://github.com/rhboot/grub2/commit/539662956ad787fffa662720a67c98c217d78128

But I don't really feel interested in creating and maintaining my own fork of grub, and I am wondering if someone has already done that.

 

I'm having trouble with networking on linux. I am renting a vps with only one NIC, one ipv4 address, and a /64 range of ipv6 ones. I want to deploy openstack neutron to this vps, but openstack neutron is designed to be ran on machines with two NIC's, one for normal network access, and entirely dedicated to virtualized networking, like in my case, giving an openstack virtual machine a public ipv6 address. I want to create a virtual NIC, which can get it's own public ipv6 addresses, for the vm's, without losing functionality of the main NIC, and I also want the vm's to have ipv4 connectivity. I know this setup is possible, as the openstack docs say so, but they didnt' cover how to do so.

Docs: https://docs.openstack.org/kolla-ansible/latest/reference/networking/neutron.html#example-shared-interface

There is an overview of what you need to do here, but I don't understand how to turn this into a usable setup. In addition to that, it seems you would need to give vm's public ipv4 addresses, in order for them to have internet connectivity. I would need to create a NAT type network that routes through the main working interface, and then put the neutron interface partially behind that, in order for ipv4 connectivity to happen.

I've been searching around for a bit, so I know this exact setup is possible: https://jamielinux.com/docs/libvirt-networking-handbook/multiple-networks.html#example-2 (last updated in 2016, outdated)

But I haven't found an updated guide on how to do it.

view more: ‹ prev next ›