Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Set up pre-commit hooks and added configuration files #1

Merged
merged 1 commit into from
Nov 14, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .codespellrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[codespell]
exclude-file = .codespellx
ignore-words-list = "FPT,FTP,fpt,ftp"
Empty file added .codespellx
Empty file.
16 changes: 16 additions & 0 deletions .conform.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
policies:
- type: commit
spec:
header:
length: 80
imperative: false
invalidLastCharacters: .
body:
required: false
dco: true
gpg:
required: true
spellcheck:
locale: US
maximumOfOneCommit: false
248 changes: 248 additions & 0 deletions .oelint-ruleset.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,248 @@
{
"oelint.append.protvars": "error",
"oelint.append.protvars.PV": "error",
"oelint.append.protvars.PR": "error",
"oelint.append.protvars.SRCREV": "error",
"oelint.append.protvars.LICENSE": "error",
"oelint.append.protvars.LIC_FILES_CHKSUM": "error",
"oelint.exportfunction.dash": "error",
"oelint.bbclass.underscores": "error",
"oelint.file.includenotfound": "warning",
"oelint.file.requireinclude": "warning",
"oelint.file.inlinesuppress_na": "info",
"oelint.file.nospaces": "error",
"oelint.file.inactiveupstreamdetails": "info",
"oelint.file.inappropriatemsg": "info",
"oelint.file.patchsignedoff": "info",
"oelint.file.upstreamstatus": "info",
"oelint.file.includerelpath": "warning",
"oelint.file.requirenotfound": "error",
"oelint.file.underscores": "error",
"oelint.func.specific": "error",
"oelint.newline.consecutive": "warning",
"oelint.newline.eof": "warning",
"oelint.spaces.linebeginning": "warning",
"oelint.spaces.linecont": "error",
"oelint.spaces.emptyline": "warning",
"oelint.spaces.lineend": "warning",
"oelint.tabs.notabs": "warning",
"oelint.task.addnotaskbody": "warning",
"oelint.task.noanonpython": "warning",
"oelint.task.customorder": "error",
"oelint.task.dash": "error",
"oelint.task.docstrings": "info",
"oelint.task.heredocs": "warning",
"oelint.task.multifragments": "info",
"oelint.task.nocopy": "error",
"oelint.task.nomkdir": "error",
"oelint.task.nopythonprefix": "warning",
"oelint.task.order": "warning",
"oelint.task.order.do_fetch": "warning",
"oelint.task.order.do_unpack": "warning",
"oelint.task.order.do_patch": "warning",
"oelint.task.order.do_configure": "warning",
"oelint.task.order.do_compile": "warning",
"oelint.task.order.do_install": "warning",
"oelint.task.order.do_populate_sysroot": "warning",
"oelint.task.order.do_build": "warning",
"oelint.task.order.do_package": "warning",
"oelint.task.pythonprefix": "warning",
"oelint.var.addpylib": "error",
"oelint.vars.appendop": "error",
"oelint.vars.autorev": "warning",
"oelint.vars.bbvars": "warning",
"oelint.vars.bbvars.BB_CONSOLELOG": "warning",
"oelint.vars.bbvars.BB_CURRENTTASK": "warning",
"oelint.vars.bbvars.BB_DANGLINGAPPENDS_WARNONLY": "warning",
"oelint.vars.bbvars.BB_DEFAULT_TASK": "warning",
"oelint.vars.bbvars.BB_DISKMON_DIRS": "warning",
"oelint.vars.bbvars.BB_DISKMON_WARNINTERVAL": "warning",
"oelint.vars.bbvars.BB_ENV_EXTRAWHITE": "warning",
"oelint.vars.bbvars.BB_ENV_WHITELIST": "warning",
"oelint.vars.bbvars.BB_FETCH_PREMIRRORONLY": "warning",
"oelint.vars.bbvars.BB_FILENAME": "warning",
"oelint.vars.bbvars.BB_GENERATE_MIRROR_TARBALLS": "warning",
"oelint.vars.bbvars.BB_HASHBASE_WHITELIST": "warning",
"oelint.vars.bbvars.BB_HASHCHECK_FUNCTION": "warning",
"oelint.vars.bbvars.BB_HASHCONFIG_WHITELIST": "warning",
"oelint.vars.bbvars.BB_INVALIDCONF": "warning",
"oelint.vars.bbvars.BB_LOGFMT": "warning",
"oelint.vars.bbvars.BB_NICE_LEVEL": "warning",
"oelint.vars.bbvars.BB_NO_NETWORK": "warning",
"oelint.vars.bbvars.BB_NUMBER_PARSE_THREADS": "warning",
"oelint.vars.bbvars.BB_NUMBER_THREADS": "warning",
"oelint.vars.bbvars.BB_ORIGENV": "warning",
"oelint.vars.bbvars.BB_PRESERVE_ENV": "warning",
"oelint.vars.bbvars.BB_RUNFMT": "warning",
"oelint.vars.bbvars.BB_RUNTASK": "warning",
"oelint.vars.bbvars.BB_SCHEDULER": "warning",
"oelint.vars.bbvars.BB_SCHEDULERS": "warning",
"oelint.vars.bbvars.BB_SETSCENE_DEPVALID": "warning",
"oelint.vars.bbvars.BB_SETSCENE_VERIFY_FUNCTION": "warning",
"oelint.vars.bbvars.BB_SIGNATURE_EXCLUDE_FLAGS": "warning",
"oelint.vars.bbvars.BB_SIGNATURE_HANDLER": "warning",
"oelint.vars.bbvars.BB_SRCREV_POLICY": "warning",
"oelint.vars.bbvars.BB_STAMP_POLICY": "warning",
"oelint.vars.bbvars.BB_STAMP_WHITELIST": "warning",
"oelint.vars.bbvars.BB_STRICT_CHECKSUM": "warning",
"oelint.vars.bbvars.BB_TASK_NICE_LEVEL": "warning",
"oelint.vars.bbvars.BB_TASKHASH": "warning",
"oelint.vars.bbvars.BB_VERBOSE_LOGS": "warning",
"oelint.vars.bbvars.BB_WORKERCONTEXT": "warning",
"oelint.vars.bbvars.BBDEBUG": "warning",
"oelint.vars.bbvars.BBFILE_COLLECTIONS": "warning",
"oelint.vars.bbvars.BBFILE_PATTERN": "warning",
"oelint.vars.bbvars.BBFILE_PRIORITY": "warning",
"oelint.vars.bbvars.BBFILES": "warning",
"oelint.vars.bbvars.BBINCLUDED": "warning",
"oelint.vars.bbvars.BBINCLUDELOGS": "warning",
"oelint.vars.bbvars.BBINCLUDELOGS_LINES": "warning",
"oelint.vars.bbvars.BBLAYERS": "warning",
"oelint.vars.bbvars.BBMASK": "warning",
"oelint.vars.bbvars.BBPATH": "warning",
"oelint.vars.bbvars.BBSERVER": "warning",
"oelint.vars.bbvars.BBVERSIONS": "warning",
"oelint.vars.bbvars.BITBAKE_UI": "warning",
"oelint.vars.bbvars.BUILDNAME": "warning",
"oelint.vars.bbvars.CACHE": "warning",
"oelint.vars.bbvars.DL_DIR": "warning",
"oelint.vars.bbvars.FILE": "warning",
"oelint.vars.bbvars.FILESDIR": "warning",
"oelint.vars.bbvars.FILESPATH": "warning",
"oelint.vars.bbvars.INHERIT": "warning",
"oelint.vars.bbvars.LAYERDEPENDS": "warning",
"oelint.vars.bbvars.LAYERDIR": "warning",
"oelint.vars.bbvars.LAYERVERSION": "warning",
"oelint.vars.bbvars.MIRRORS": "warning",
"oelint.vars.bbvars.MULTI_PROVIDER_WHITELIST": "warning",
"oelint.vars.bbvars.PERSISTENT_DIR": "warning",
"oelint.vars.bbvars.PREFERRED_PROVIDER": "warning",
"oelint.vars.bbvars.PREFERRED_PROVIDERS": "warning",
"oelint.vars.bbvars.PREFERRED_VERSION": "warning",
"oelint.vars.bbvars.PREMIRRORS": "warning",
"oelint.vars.bbvars.PRSERV_HOST": "warning",
"oelint.vars.bbvars.STAMP": "warning",
"oelint.vars.bbvars.TOPDIR": "warning",
"oelint.vars.bugtrackerisurl": "warning",
"oelint.vars.dependsappend": "error",
"oelint.vars.dependsclass": "error",
"oelint.vars.dependsordered": "info",
"oelint.vars.descriptiontoobrief": "info",
"oelint.vars.doublemodify": "error",
"oelint.vars.duplicate": "warning",
"oelint.vars.fileextrapaths": "info",
"oelint.vars.fileextrapathsop": "error",
"oelint.var.filesoverride": "warning",
"oelint.vars.homepageprefix": "warning",
"oelint.vars.homepageping": "info",
"oelint.vars.insaneskip": "info",
"oelint.var.licenseremotefile": "info",
"oelint.vars.licensesdpx": "warning",
"oelint.vars.licfileprefix": "warning",
"oelint.vars.mispell": "warning",
"oelint.vars.multilineident": "warning",
"oelint.vars.overrideappend": "warning",
"oelint.vars.pbpusage": "error",
"oelint.vars.dusageinpkgfuncs": "error",
"oelint.vars.pkgspecific": "error",
"oelint.vars.pkgspecific.RDEPENDS": "error",
"oelint.vars.pkgspecific.RRECOMMENDS": "error",
"oelint.vars.pkgspecific.RSUGGESTS": "error",
"oelint.vars.pkgspecific.RCONFLICTS": "error",
"oelint.vars.pkgspecific.RPROVIDES": "error",
"oelint.vars.pkgspecific.RREPLACES": "error",
"oelint.vars.pkgspecific.FILES": "error",
"oelint.vars.pkgspecific.pkg_preinst": "error",
"oelint.vars.pkgspecific.pkg_postinst": "error",
"oelint.vars.pkgspecific.pkg_prerm": "error",
"oelint.vars.pkgspecific.pkg_postrm": "error",
"oelint.vars.pkgspecific.ALLOW_EMPTY": "error",
"oelint.vars.pnbpnusage": "error",
"oelint.vars.pnusagediscouraged": "warning",
"oelint.vars.pythonpnusage": "info",
"oelint.vars.valuequoted": "error",
"oelint.var.rootfspostcmd": "warning",
"oelint.vars.spacesassignment": "warning",
"oelint.vars.specific": "error",
"oelint.vars.srcurioptions": "warning",
"oelint.vars.srcuriappend": "error",
"oelint.vars.srcurichecksum": "error",
"oelint.vars.srcuridomains": "info",
"oelint.vars.srcurifile": "warning",
"oelint.vars.srcurigittag": "warning",
"oelint.vars.srcurisrcrevtag": "error",
"oelint.var.srcuriwildcard": "error",
"oelint.vars.summary80chars": "info",
"oelint.vars.summarylinebreaks": "warning",
"oelint.vars.notrailingslash": "error",
"oelint.vars.downloadfilename": "warning",
"oelint.vars.filessetting": "warning",
"oelint.vars.filessetting.hidden": "warning",
"oelint.vars.filessetting.double": "warning",
"oelint.var.improperinherit": "error",
"oelint.var.inherit": "warning",
"oelint.var.inherit.inherit": "warning",
"oelint.var.inherit.inherit_defer": "warning",
"oelint.var.inheritdevtool": "warning",
"oelint.var.inheritdevtool.native": "warning",
"oelint.var.inheritdevtool.nativesdk": "warning",
"oelint.var.inheritdevtool.cross": "warning",
"oelint.vars.listappend": "error",
"oelint.var.mandatoryvar": "error",
"oelint.var.mandatoryvar.SUMMARY": "error",
"oelint.var.mandatoryvar.DESCRIPTION": "info",
"oelint.var.mandatoryvar.HOMEPAGE": "error",
"oelint.var.mandatoryvar.LICENSE": "error",
"oelint.var.mandatoryvar.SRC_URI": "error",
"oelint.var.multiinclude": "warning",
"oelint.var.multiinherit": "warning",
"oelint.var.nativefilename": "warning",
"oelint.var.nativesdkfilename": "warning",
"oelint.var.order": "warning",
"oelint.var.order.SUMMARY": "warning",
"oelint.var.order.DESCRIPTION": "warning",
"oelint.var.order.AUTHOR": "warning",
"oelint.var.order.HOMEPAGE": "warning",
"oelint.var.order.BUGTRACKER": "warning",
"oelint.var.order.SECTION": "warning",
"oelint.var.order.LICENSE": "warning",
"oelint.var.order.LIC_FILES_CHKSUM": "warning",
"oelint.var.order.DEPENDS": "warning",
"oelint.var.order.PROVIDES": "warning",
"oelint.var.order.PV": "warning",
"oelint.var.order.SRC_URI": "warning",
"oelint.var.order.SRCREV": "warning",
"oelint.var.order.S": "warning",
"oelint.var.order.inherit": "warning",
"oelint.var.order.PACKAGECONFIG": "warning",
"oelint.var.order.EXTRA_QMAKEVARS_POST": "warning",
"oelint.var.order.EXTRA_OECONF": "warning",
"oelint.var.order.PACKAGE_ARCH": "warning",
"oelint.var.order.PACKAGES": "warning",
"oelint.var.order.FILES": "warning",
"oelint.var.order.RDEPENDS": "warning",
"oelint.var.order.RRECOMMENDS": "warning",
"oelint.var.order.RSUGGESTS": "warning",
"oelint.var.order.RPROVIDES": "warning",
"oelint.var.order.RCONFLICTS": "warning",
"oelint.var.order.BBCLASSEXTEND": "warning",
"oelint.vars.pathhardcode": "warning",
"oelint.vars.pathhardcode.systemd_user_unitdir": "warning",
"oelint.vars.pathhardcode.systemd_system_unitdir": "warning",
"oelint.vars.pathhardcode.docdir": "warning",
"oelint.vars.pathhardcode.infodir": "warning",
"oelint.vars.pathhardcode.mandir": "warning",
"oelint.vars.pathhardcode.libexecdir": "warning",
"oelint.vars.pathhardcode.systemd_unitdir": "warning",
"oelint.vars.pathhardcode.libdir": "warning",
"oelint.vars.pathhardcode.bindir": "warning",
"oelint.vars.pathhardcode.datadir": "warning",
"oelint.vars.pathhardcode.includedir": "warning",
"oelint.vars.pathhardcode.localstatedir": "warning",
"oelint.vars.pathhardcode.nonarch_base_libdir": "warning",
"oelint.vars.pathhardcode.sbindir": "warning",
"oelint.vars.pathhardcode.servicedir": "warning",
"oelint.vars.pathhardcode.sharedstatedir": "warning",
"oelint.vars.pathhardcode.sysconfdir": "warning",
"oelint.vars.virtual": "error"
}
58 changes: 58 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
---
default_stages: [pre-commit]

default_install_hook_types: [pre-commit, commit-msg]

ci:
autoupdate_commit_msg: 'pre-commit: autoupdate hooks'
autofix_prs: false

repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
- id: check-added-large-files
- id: check-merge-conflict
- id: check-symlinks
- id: detect-private-key
- id: end-of-file-fixer
- id: trailing-whitespace
exclude: ^.*\.patch$
- id: mixed-line-ending
exclude: ^.*\.patch$

- repo: https://github.com/talos-systems/conform
rev: v0.1.0-alpha.30
hooks:
- id: conform
stages:
- commit-msg

- repo: https://github.com/codespell-project/codespell
rev: v2.3.0
hooks:
- id: codespell

- repo: https://github.com/adrienverge/yamllint
rev: v1.35.1
hooks:
- id: yamllint
args: [-c=.yamllint]

- repo: https://github.com/3mdeb/hooks
rev: v0.1.3
hooks:
- id: namespell
args: [--fix]

- repo: https://github.com/priv-kweihmann/oelint-adv
rev: 6.5.6
hooks:
- id: oelint-adv
args: [--rulefile=.oelint-ruleset.json, --hide=info, --quiet, --fix]
name: Advanced oelint
description: Based on the OpenEmbedded Styleguide and work done by oe-stylize-tool this module offers a (nearly) complete linter for bitbake-recipes.
entry: oelint-adv
language: python
language_version: python3
files: .*\.(bb)|(bbappend)|(bbclass)$
16 changes: 16 additions & 0 deletions .yamllint
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
extends: default

rules:
comments:
require-starting-space: true
ignore-shebangs: true
min-spaces-from-content: 2
document-start:
present: true
level: error
indentation:
spaces: 2
line-length: disable
truthy:
check-keys: false
12 changes: 12 additions & 0 deletions conf/layer.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
BBPATH .= ":${LAYERDIR}"

BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
${LAYERDIR}/recipes-*/*/*.bbappend"

BBFILE_COLLECTIONS += "coreboot"
BBFILE_PATTERN_dasharo = "^${LAYERDIR}/"
BBFILE_PRIORITY_dasharo = "85"

LAYERVERSION_dasharo = "1"

LAYERSERIES_COMPAT_meta-dasharo = "scarthgap master"