From 69ec1f44d2c17c4f7deff19403cf76019e2e7fcb Mon Sep 17 00:00:00 2001 From: Anton Novojilov Date: Fri, 23 Aug 2024 12:34:32 +0300 Subject: [PATCH 1/8] Improve CI workflow --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f571f2cd..b8a06295 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -165,6 +165,7 @@ jobs: SendCoverage: name: Send Coverage runs-on: ubuntu-latest + if: success() || failure() needs: [Linux, macOS] From 960b48113a59cb6329b65230ea12ac1360b81432 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 5 Sep 2024 07:39:07 +0000 Subject: [PATCH 2/8] Bump golang.org/x/sys from 0.24.0 to 0.25.0 in the all group Bumps the all group with 1 update: [golang.org/x/sys](https://github.com/golang/sys). Updates `golang.org/x/sys` from 0.24.0 to 0.25.0 - [Commits](https://github.com/golang/sys/compare/v0.24.0...v0.25.0) --- updated-dependencies: - dependency-name: golang.org/x/sys dependency-type: direct:production update-type: version-update:semver-minor dependency-group: all ... Signed-off-by: dependabot[bot] --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 0852eac9..a8964127 100644 --- a/go.mod +++ b/go.mod @@ -7,7 +7,7 @@ require ( github.com/essentialkaos/depsy v1.3.0 github.com/essentialkaos/go-linenoise/v3 v3.6.0 golang.org/x/crypto v0.26.0 - golang.org/x/sys v0.24.0 + golang.org/x/sys v0.25.0 ) require ( diff --git a/go.sum b/go.sum index df0bdc87..dea89786 100644 --- a/go.sum +++ b/go.sum @@ -15,5 +15,5 @@ github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDN github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA= golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw= golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= -golang.org/x/sys v0.24.0 h1:Twjiwq9dn6R1fQcyiK+wQyHWfaz/BJB+YIpzU/Cv3Xg= -golang.org/x/sys v0.24.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34= +golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= From e927ed889c50076d229e20237539dd74f1c0445f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 6 Sep 2024 07:25:30 +0000 Subject: [PATCH 3/8] Bump golang.org/x/crypto from 0.26.0 to 0.27.0 in the all group Bumps the all group with 1 update: [golang.org/x/crypto](https://github.com/golang/crypto). Updates `golang.org/x/crypto` from 0.26.0 to 0.27.0 - [Commits](https://github.com/golang/crypto/compare/v0.26.0...v0.27.0) --- updated-dependencies: - dependency-name: golang.org/x/crypto dependency-type: direct:production update-type: version-update:semver-minor dependency-group: all ... Signed-off-by: dependabot[bot] --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index a8964127..e2271e62 100644 --- a/go.mod +++ b/go.mod @@ -6,7 +6,7 @@ require ( github.com/essentialkaos/check v1.4.0 github.com/essentialkaos/depsy v1.3.0 github.com/essentialkaos/go-linenoise/v3 v3.6.0 - golang.org/x/crypto v0.26.0 + golang.org/x/crypto v0.27.0 golang.org/x/sys v0.25.0 ) diff --git a/go.sum b/go.sum index dea89786..cc6de943 100644 --- a/go.sum +++ b/go.sum @@ -13,7 +13,7 @@ github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsK github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs= github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M= github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA= -golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw= -golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= +golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A= +golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70= golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34= golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= From 02b5d572142b6e1ac15ad15f2c57d378a540f0f4 Mon Sep 17 00:00:00 2001 From: Anton Novojilov Date: Thu, 12 Sep 2024 14:20:06 +0300 Subject: [PATCH 4/8] [strutil] Add method 'SqueezeRepeats' --- CHANGELOG.md | 4 ++++ strutil/example_test.go | 8 ++++++++ strutil/strutil.go | 24 ++++++++++++++++++++++++ strutil/strutil_test.go | 6 ++++++ version.go | 2 +- 5 files changed, 43 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9ae19cc3..5e45838c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ ## Changelog +### [13.4.0](https://kaos.sh/ek/13.4.0) + +- `[strutil]` Added method `SqueezeRepeats` + ### [13.3.5](https://kaos.sh/ek/13.3.5) - `[timeutil]` Improved formatting of days and seconds in `MiniDuration` diff --git a/strutil/example_test.go b/strutil/example_test.go index 78a66a17..f77177aa 100644 --- a/strutil/example_test.go +++ b/strutil/example_test.go @@ -210,3 +210,11 @@ func ExampleIndexByteSkip() { // 10 // 10 } + +func ExampleSqueezeRepeats() { + s := `"john"" "bob" """mary""` + fmt.Println(SqueezeRepeats(s, `" `)) + + // Output: + // "john" "bob" "mary" +} diff --git a/strutil/strutil.go b/strutil/strutil.go index c2ee9767..e829ba70 100644 --- a/strutil/strutil.go +++ b/strutil/strutil.go @@ -482,6 +482,30 @@ func IndexByteSkip(s string, c byte, skip int) int { return -1 } +// SqueezeRepeats replaces each sequence of a repeated character that is listed in +// the specified set +func SqueezeRepeats(s string, set string) string { + if s == "" || set == "" { + return s + } + + for _, r := range set { + l, rs := len(s), string(r) + + for { + s = strings.ReplaceAll(s, rs+rs, rs) + + if len(s) == l { + break + } + + l = len(s) + } + } + + return s +} + // ////////////////////////////////////////////////////////////////////////////////// // func appendField(data []string, item string) []string { diff --git a/strutil/strutil_test.go b/strutil/strutil_test.go index a101df9c..59657fc6 100644 --- a/strutil/strutil_test.go +++ b/strutil/strutil_test.go @@ -208,6 +208,12 @@ func (s *StrUtilSuite) TestIndexByteSkip(c *C) { c.Assert(IndexByteSkip("/home/john/projects/test.log", '/', -1), Equals, 10) } +func (s *StrUtilSuite) TestSqueezeRepeats(c *C) { + c.Assert(SqueezeRepeats("", ""), Equals, "") + c.Assert(SqueezeRepeats("test", ""), Equals, "test") + c.Assert(SqueezeRepeats("1 ---- 2 - 3 -- 4", " -"), Equals, "1 - 2 - 3 - 4") +} + // ////////////////////////////////////////////////////////////////////////////////// // func (s *StrUtilSuite) BenchmarkSubstr(c *C) { diff --git a/version.go b/version.go index 5b713d4b..c5519f42 100644 --- a/version.go +++ b/version.go @@ -8,4 +8,4 @@ package ek // ////////////////////////////////////////////////////////////////////////////////// // // VERSION is current ek package version -const VERSION = "13.3.5" +const VERSION = "13.4.0" From 50ee27d333bfd4b5e912a2a61883622f118c5229 Mon Sep 17 00:00:00 2001 From: Anton Novojilov Date: Thu, 12 Sep 2024 14:24:55 +0300 Subject: [PATCH 5/8] Update supported Go versions --- .github/workflows/ci.yml | 2 +- README.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b8a06295..31fab295 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -28,7 +28,7 @@ jobs: strategy: matrix: - go: [ '1.21.x', '1.22.x' ] + go: [ '1.22.x', '1.23.x' ] steps: - name: Set up Go diff --git a/README.md b/README.md index b38dfb3e..9e70cd4c 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@
-Auxiliary packages for Go. +Auxiliary packages for Go 1.22+. ### Platform support From 1cd8275bea66c8fe8e8d990b9a2a79484bd303e0 Mon Sep 17 00:00:00 2001 From: Anton Novojilov Date: Thu, 12 Sep 2024 17:32:13 +0300 Subject: [PATCH 6/8] [system/sysctl] Add new package for reading kernel parameters --- CHANGELOG.md | 1 + README.md | 3 +- system/sysctl/example_test.go | 44 ++++++++++++++ system/sysctl/sysctl.go | 76 ++++++++++++++++++++++++ system/sysctl/sysctl_darwin.go | 21 +++++++ system/sysctl/sysctl_linux.go | 31 ++++++++++ system/sysctl/sysctl_stubs.go | 27 +++++++++ system/sysctl/sysctl_test.go | 103 +++++++++++++++++++++++++++++++++ 8 files changed, 305 insertions(+), 1 deletion(-) create mode 100644 system/sysctl/example_test.go create mode 100644 system/sysctl/sysctl.go create mode 100644 system/sysctl/sysctl_darwin.go create mode 100644 system/sysctl/sysctl_linux.go create mode 100644 system/sysctl/sysctl_stubs.go create mode 100644 system/sysctl/sysctl_test.go diff --git a/CHANGELOG.md b/CHANGELOG.md index 5e45838c..42f46261 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ ### [13.4.0](https://kaos.sh/ek/13.4.0) +- `[system/sysctl]` Added new package for reading kernel parameters - `[strutil]` Added method `SqueezeRepeats` ### [13.3.5](https://kaos.sh/ek/13.3.5) diff --git a/README.md b/README.md index 9e70cd4c..dd2a547d 100644 --- a/README.md +++ b/README.md @@ -78,12 +78,13 @@ Currently we support Linux and macOS (_except some packages_). All packages have - [`spinner`](https://kaos.sh/g/ek.v13/spinner) — Package provides methods for creating spinner animation for long-running tasks - [`strutil`](https://kaos.sh/g/ek.v13/strutil) — Package provides methods for working with strings - [`support`](https://kaos.sh/g/ek.v13/support) — Package provides methods for collecting and printing support information about system +- [`system`](https://kaos.sh/g/ek.v13/system) — Package provides methods for working with system data (_system metrics/users_) - [`system/container`](https://kaos.sh/g/ek.v13/system/container) — Package provides methods for checking container engine info - [`system/exec`](https://kaos.sh/g/ek.v13/system/exec) — Package provides methods for executing commands - [`system/process`](https://kaos.sh/g/ek.v13/system/process) — Package provides methods for gathering information about active processes - [`system/procname`](https://kaos.sh/g/ek.v13/system/procname) — Package provides methods for changing process name in the process tree - [`system/sensors`](https://kaos.sh/g/ek.v13/system/sensors) — Package provide methods for collecting sensors information -- [`system`](https://kaos.sh/g/ek.v13/system) — Package provides methods for working with system data (_system metrics/users_) +- [`system/sysctl`](https://kaos.sh/g/ek.v13/system/sysctl) — Package provide methods for reading kernel parameters - [`terminal`](https://kaos.sh/g/ek.v13/terminal) — Package provides methods for printing messages to terminal - [`terminal/input`](https://kaos.sh/g/ek.v13/terminal/input) — Package provides methods for working with user input - [`terminal/tty`](https://kaos.sh/g/ek.v13/terminal/tty) — Package provides methods for working with TTY diff --git a/system/sysctl/example_test.go b/system/sysctl/example_test.go new file mode 100644 index 00000000..3d1d093e --- /dev/null +++ b/system/sysctl/example_test.go @@ -0,0 +1,44 @@ +package sysctl + +// ////////////////////////////////////////////////////////////////////////////////// // +// // +// Copyright (c) 2024 ESSENTIAL KAOS // +// Apache License, Version 2.0 // +// // +// ////////////////////////////////////////////////////////////////////////////////// // + +import ( + "fmt" +) + +// ////////////////////////////////////////////////////////////////////////////////// // + +func ExampleGet() { + paramValue, err := Get("kernel.random.boot_id") + + if err != nil { + panic(err.Error()) + } + + fmt.Printf("Boot ID: %s\n", paramValue) +} + +func ExampleGetI() { + paramValue, err := GetI("kernel.pty.max") + + if err != nil { + panic(err.Error()) + } + + fmt.Printf("PTY Max: %d\n", paramValue) +} + +func ExampleGetI64() { + paramValue, err := GetI64("fs.file-max") + + if err != nil { + panic(err.Error()) + } + + fmt.Printf("File max: %d\n", paramValue) +} diff --git a/system/sysctl/sysctl.go b/system/sysctl/sysctl.go new file mode 100644 index 00000000..c43cf59c --- /dev/null +++ b/system/sysctl/sysctl.go @@ -0,0 +1,76 @@ +//go:build linux || darwin +// +build linux darwin + +// Package sysctl provides methods for reading kernel parameters +package sysctl + +// ////////////////////////////////////////////////////////////////////////////////// // +// // +// Copyright (c) 2024 ESSENTIAL KAOS // +// Apache License, Version 2.0 // +// // +// ////////////////////////////////////////////////////////////////////////////////// // + +import ( + "fmt" + "strconv" + "strings" +) + +// ////////////////////////////////////////////////////////////////////////////////// // + +// binary is sysctl binary name +var binary = "sysctl" + +// procFS is path to procfs +var procFS = "/proc/sys" + +// ////////////////////////////////////////////////////////////////////////////////// // + +// Get returns kernel parameter value as a string +func Get(param string) (string, error) { + switch { + case param == "": + return "", fmt.Errorf("Kernel parameter name cannot be empty") + case !strings.Contains(param, ".") || strings.ContainsAny(param, " /\n\t"): + return "", fmt.Errorf("Invalid parameter name %q", param) + } + + return getKernelParam(param) +} + +// GetI returns kernel parameter value as an int +func GetI(param string) (int, error) { + p, err := Get(param) + + if err != nil { + return 0, err + } + + i, err := strconv.Atoi(p) + + if err != nil { + return 0, fmt.Errorf("Can't parse %q parameter as int: %w", param, err) + } + + return i, nil +} + +// GetI64 returns kernel parameter value as an int64 +func GetI64(param string) (int64, error) { + p, err := Get(param) + + if err != nil { + return 0, err + } + + i, err := strconv.ParseInt(p, 10, 64) + + if err != nil { + return 0, fmt.Errorf("Can't parse %q parameter as int64: %w", param, err) + } + + return i, nil +} + +// ////////////////////////////////////////////////////////////////////////////////// // diff --git a/system/sysctl/sysctl_darwin.go b/system/sysctl/sysctl_darwin.go new file mode 100644 index 00000000..c2418629 --- /dev/null +++ b/system/sysctl/sysctl_darwin.go @@ -0,0 +1,21 @@ +package sysctl + +// ////////////////////////////////////////////////////////////////////////////////// // +// // +// Copyright (c) 2024 ESSENTIAL KAOS // +// Apache License, Version 2.0 // +// // +// ////////////////////////////////////////////////////////////////////////////////// // + +import ( + "os/exec" + "strings" +) + +// ////////////////////////////////////////////////////////////////////////////////// // + +// getKernelParam reads kernel parameter from procfs +func getKernelParam(param string) (string, error) { + output, err := exec.Command(binary, "-n", param).Output() + return strings.Trim(string(output), "\n\r"), err +} diff --git a/system/sysctl/sysctl_linux.go b/system/sysctl/sysctl_linux.go new file mode 100644 index 00000000..95c3c0c0 --- /dev/null +++ b/system/sysctl/sysctl_linux.go @@ -0,0 +1,31 @@ +package sysctl + +// ////////////////////////////////////////////////////////////////////////////////// // +// // +// Copyright (c) 2024 ESSENTIAL KAOS // +// Apache License, Version 2.0 // +// // +// ////////////////////////////////////////////////////////////////////////////////// // + +import ( + "fmt" + "os" + "strings" + + "github.com/essentialkaos/ek/v13/path" +) + +// ////////////////////////////////////////////////////////////////////////////////// // + +// getKernelParam reads kernel parameter from procfs +func getKernelParam(param string) (string, error) { + p, err := os.ReadFile(path.Clean(path.Join( + procFS, strings.ReplaceAll(param, ".", "/"), + ))) + + if err != nil { + return "", fmt.Errorf("Can't read parameter %q: %w", param, err) + } + + return strings.Trim(string(p), "\n\r"), nil +} diff --git a/system/sysctl/sysctl_stubs.go b/system/sysctl/sysctl_stubs.go new file mode 100644 index 00000000..1cd96e24 --- /dev/null +++ b/system/sysctl/sysctl_stubs.go @@ -0,0 +1,27 @@ +//go:build !linux && !darwin +// +build !linux,!darwin + +// Package sysctl provides methods for reading kernel parameters +package sysctl + +// ////////////////////////////////////////////////////////////////////////////////// // +// // +// Copyright (c) 2024 ESSENTIAL KAOS // +// Apache License, Version 2.0 // +// // +// ////////////////////////////////////////////////////////////////////////////////// // + +// Get returns kernel parameter value as a string +func Get(param string) (string, error) { + return "", nil +} + +// GetI returns kernel parameter value as an int +func GetI(param string) (int, error) { + return 0, nil +} + +// GetI64 returns kernel parameter value as an int64 +func GetI64(param string) (int64, error) { + return 0, nil +} diff --git a/system/sysctl/sysctl_test.go b/system/sysctl/sysctl_test.go new file mode 100644 index 00000000..4b9513ce --- /dev/null +++ b/system/sysctl/sysctl_test.go @@ -0,0 +1,103 @@ +package sysctl + +// ////////////////////////////////////////////////////////////////////////////////// // +// // +// Copyright (c) 2024 ESSENTIAL KAOS // +// Apache License, Version 2.0 // +// // +// ////////////////////////////////////////////////////////////////////////////////// // + +import ( + "runtime" + "testing" + + . "github.com/essentialkaos/check" +) + +// ////////////////////////////////////////////////////////////////////////////////// // + +type SysctlSuite struct{} + +// ////////////////////////////////////////////////////////////////////////////////// // + +func Test(t *testing.T) { TestingT(t) } + +// ////////////////////////////////////////////////////////////////////////////////// // + +var _ = Suite(&SysctlSuite{}) + +// ////////////////////////////////////////////////////////////////////////////////// // + +func (s *SysctlSuite) TestBasic(c *C) { + if runtime.GOOS == "darwin" { + vs, err := Get("kern.job_control") + c.Assert(err, IsNil) + c.Assert(vs, Equals, "1") + vi, err := GetI("kern.job_control") + c.Assert(err, IsNil) + c.Assert(vi, Equals, int(1)) + vi64, err := GetI64("kern.job_control") + c.Assert(err, IsNil) + c.Assert(vi64, Equals, int64(1)) + } else { + vs, err := Get("net.ipv4.conf.all.forwarding") + c.Assert(err, IsNil) + c.Assert(vs, Equals, "1") + vi, err := GetI("net.ipv4.conf.all.forwarding") + c.Assert(err, IsNil) + c.Assert(vi, Equals, int(1)) + vi64, err := GetI64("net.ipv4.conf.all.forwarding") + c.Assert(err, IsNil) + c.Assert(vi64, Equals, int64(1)) + } +} + +func (s *SysctlSuite) TestBasicErrors(c *C) { + _, err := Get("") + c.Assert(err, NotNil) + c.Assert(err, ErrorMatches, `Kernel parameter name cannot be empty`) + + _, err = Get("test") + c.Assert(err, NotNil) + c.Assert(err, ErrorMatches, `Invalid parameter name "test"`) + + _, err = GetI("test") + c.Assert(err, NotNil) + _, err = GetI64("test") + c.Assert(err, NotNil) + + _, err = Get("te st") + c.Assert(err, NotNil) + _, err = Get("te/st") + c.Assert(err, NotNil) + _, err = Get("te\tst") + c.Assert(err, NotNil) + _, err = Get("te\nst") + c.Assert(err, NotNil) + + if runtime.GOOS == "darwin" { + _, err = GetI("kern.bootuuid") + c.Assert(err, NotNil) + _, err = GetI64("kern.bootuuid") + c.Assert(err, NotNil) + } else { + _, err = GetI("kernel.random.boot_id") + c.Assert(err, NotNil) + _, err = GetI64("kernel.random.boot_id") + c.Assert(err, NotNil) + } +} + +func (s *SysctlSuite) TestOSErrors(c *C) { + if runtime.GOOS == "darwin" { + binary = "_unknown_" + _, err := Get("kern.bootuuid") + c.Assert(err, NotNil) + binary = "sysctl" + } else { + procFS = "/_unknown_" + _, err := Get("kernel.random.boot_id") + c.Assert(err, NotNil) + procFS = "/proc/sys" + } +} From f190a002669ac58fa724057579c2e6ec6023c5fa Mon Sep 17 00:00:00 2001 From: Anton Novojilov Date: Thu, 12 Sep 2024 17:35:22 +0300 Subject: [PATCH 7/8] Update supported Go versions --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 31fab295..2088b04b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -87,7 +87,7 @@ jobs: strategy: matrix: - go: [ '1.21.x', '1.22.x' ] + go: [ '1.22.x', '1.23.x' ] steps: - name: Set up Go @@ -144,7 +144,7 @@ jobs: strategy: matrix: - go: [ '1.21.x', '1.22.x' ] + go: [ '1.22.x', '1.23.x' ] steps: - name: Set up Go From af6b014076f59e906fb258323976612f718231cf Mon Sep 17 00:00:00 2001 From: Anton Novojilov Date: Thu, 12 Sep 2024 23:34:19 +0300 Subject: [PATCH 8/8] Update coverage configuration --- .scripts/packages.list | 1 + 1 file changed, 1 insertion(+) diff --git a/.scripts/packages.list b/.scripts/packages.list index 42bcb48c..124a356d 100644 --- a/.scripts/packages.list +++ b/.scripts/packages.list @@ -60,6 +60,7 @@ L + netutil L - system/process * - system/procname L + system/sensors +* + system/sysctl * + terminal * ! terminal/tty * - terminal/input