# apt apt install
E: Invalid operation apt
Auch bekannt als:
# apt apt install
E: Invalid operation apt
To get a TLS certificate from Let’s Encrypt, they need to verify that you are in control of your domain. For regular domains, this can be done via HTTP, for wildcard certificates they require you to create a DNS record with a special token to verify ownership of the domain.
This means that in order to automatically obtain a TLS certificate, caddy needs to interact with the API of your domain registrar to set up this record. Since there are many different providers, this isn’t built into caddy itself and you require a version that includes the corresponding caddy-dns module. Caddy modules need to compiled into the binary, so it’s not always trivial to set up (in my case I have a systemd timer that rebuilds a local container image whenever a new version of the docker.io/caddy:builder image is available).
Caddy automatically sets up certificates for you. Since I don’t want my subdomain to appear in certificate transparency logs, I use a wildcard certificate which requires using a plugin for my DNS provider.
A reverse proxy, in my case Caddy.
I would prefer manually writing each software using butterflies over having snapd
installed on my system.
To explain it a bit further: when you move a file/directory on the same mount point, moving the file/directory is essentially just a rename operation, which doesn’t involve copying the data itself and is a very cheap operation. If you move a file/directory across mount points, you need to (recursively) copy the file/directory, copy file metadata and (recursively) delete the old file/directory, which is slow and error-prone.
the hidden “trashbin”, .Trash-$(uid), invented by Ubuntu
This isn’t some “idiotic principle invented by Ubuntu”, it just follows the freedesktop.org Trash specification. For many users, it can be really beneficial, see also the spec’s introduction:
An ability to recover accidentally deleted files has become the de facto standard for today’s desktop user experience.
Users do not expect that anything they delete is permanently gone. Instead, they are used to a “Trash can” metaphor. A deleted document ends up in a “Trash can”, and stays there at least for some time — until the can is manually or automatically cleaned.
Whether an application like Prism Launcher should use the trash can or delete the files directly is an entirely different question.
I never heard of Cozy, but it looks quite nice. The Self-Hosting Documentation ist a bit lacking, but https://github.com/cozy/cozy-stack-compose contains all required information to set it it up yourself.
I originally used Nextcloud, but it has a lot of features not related to file hosting
Cozy seems to be in a similar situation, where file storage is just one of many features that it provides. If you want just files, it might be the best idea to just use any WebDAV Server or something like File Browser.
FYI, you mentioned @[email protected] on mastodon which is actually an English speaking community on Lemmy. This created a new discussion post here on Lemmy which propably wasn’t what you intended to do. In the future, please look at the account description before mentioning it.
The error message is very detailed and there is nothing to add to it.
If you want to install an application/CLI tool, use pipx
or your system package manager. If you want to install a library, use a virtual environment (e.g. by using python -m venv
) or your system package manager.
I think you understood their comment wrong. In your code (e.g. label.add_css_class("green");
) you don’t use a dot, but in the CSS stylesheet. It works the same as with HTML/JS/CSS.
Well, that’s CSS :D
Note that if you create a custom Widget class, you can set a CSS name, wich isn’t a CSS class and doesn’t use a leading dot.
Just use label.add_css_class()
, label.remove_css_class()
or label.set_css_classes()
and make sure to properly load your CSS style sheets, this is usually done by including them as a resource alongside .ui files and icons. If you are using libadwaita, you can also use its predefined style classes.
#!/usr/bin/env -S cargo +nightly -Zscript
---
[dependencies]
gtk = { package = "gtk4", version = "0.9.3", features = ["v4_12"] }
---
use gtk::{glib, prelude::*};
const STYLESHEET: &str = r#"
.green {
color: green;
}
.red {
color: red;
}
"#;
fn main() -> glib::ExitCode {
let app = gtk::Application::builder()
.application_id("org.example.HelloWorld")
.build();
app.connect_activate(|app| {
let window = gtk::ApplicationWindow::builder()
.application(app)
.title("Hello, World!")
.build();
// Stylesheets are usually bundled with application resources
// and automatically loaded
let css_provider = gtk::CssProvider::new();
css_provider.load_from_string(STYLESHEET);
gtk::style_context_add_provider_for_display(
&RootExt::display(&window),
&css_provider,
0
);
let box_ = gtk::Box::new(gtk::Orientation::Vertical, 6);
let label = gtk::Label::builder()
.label("Hello, World")
.css_classes(["green"].as_slice())
.build();
box_.append(&label);
let button = gtk::Button::builder()
.label("Toggle Color")
.build();
box_.append(&button);
button.connect_clicked(glib::clone!(#[weak] label, move |_| {
if label.has_css_class("red") {
label.add_css_class("green");
label.remove_css_class("red");
} else {
label.add_css_class("red");
label.remove_css_class("green");
}
}));
window.set_child(Some(&box_));
window.present();
});
app.run()
}
phyphox has an Audio Amplitude feature.
By providing a modified bitmap to the X.Org Server, a heap-based buffer overflow privilege escalation can occur.
Maybe we should stop writing security critical software in memory unsafe languages. I now this vulnerability was introduced a long time ago, but given that major Wayland compositors are still written in C, something like this isn’t too unlikely to happen again.
This is extremely sad. I use Syncthing a lot to sync documents between my phone an my computer.
The main benefit over client/server-based solutions are that it always works.
No network connection? No problem, the files are all stored locally.
I broke my home server again? No problem, the devices can talk directly to each other.
The site (incorrectly) returns 200, so they can’t know.
basic flyers & ads, restaurant menus
For this sort of things, LibreOffice Draw can be really good. I even used it in the past to create memes.
I wonder how they turn the lantern off using a button.
Pistachios aren’t actually nuts. They’re drupes