feat: function to set CAP_SYS_NICE

This commit is contained in:
Gabriele Musco 2023-06-15 21:14:32 +02:00
parent d9b0412aca
commit e81ca83f9e
No known key found for this signature in database
GPG key ID: 1068D795C80E51DE

View file

@ -7,7 +7,7 @@ use std::{
use expect_dialog::ExpectDialog;
use crate::constants::CMD_NAME;
use crate::{constants::CMD_NAME, runner::Runner};
pub fn get_writer(path_s: &String) -> BufWriter<std::fs::File> {
let path = Path::new(path_s);
@ -72,3 +72,13 @@ pub fn set_file_radonly(path_s: &String, readonly: bool) {
perms.set_readonly(readonly);
fs::set_permissions(path, perms).expect_dialog("Could not set permissions for file")
}
pub fn setcap_cap_sys_nice_eip(file: String) {
let mut runner = Runner::new(None, "pkexec".into(), vec![
"setcap".into(),
"CAP_SYS_NICE=eip".into(),
file
]);
runner.start();
runner.join();
}