diff --git a/meson.build b/meson.build
index b9dbd1b..2389f47 100644
--- a/meson.build
+++ b/meson.build
@@ -1,25 +1,20 @@
 project(
-  'phosphor-ipmi-blobs',
-  'cpp',
-  version: '0.1',
-  meson_version: '>=1.1.1',
-  default_options: [
-    'cpp_std=c++23',
-    'warning_level=3',
-    'werror=true',
-  ])
+    'phosphor-ipmi-blobs',
+    'cpp',
+    version: '0.1',
+    meson_version: '>=1.1.1',
+    default_options: ['cpp_std=c++23', 'warning_level=3', 'werror=true'],
+)
 
-ipmi_blob_dep = declare_dependency(
-  include_directories: include_directories('.'))
+ipmi_blob_dep = declare_dependency(include_directories: include_directories('.'))
 
-install_headers(
-  'blobs-ipmid/blobs.hpp',
-  subdir: 'blobs-ipmid')
+install_headers('blobs-ipmid/blobs.hpp', subdir: 'blobs-ipmid')
 
 import('pkgconfig').generate(
-  name: 'phosphor-ipmi-blobs',
-  description: 'Phosphor Blob Transfer Interface',
-  version: meson.project_version())
+    name: 'phosphor-ipmi-blobs',
+    description: 'Phosphor Blob Transfer Interface',
+    version: meson.project_version(),
+)
 
 cpp = meson.get_compiler('cpp')
 
@@ -28,53 +23,52 @@
 channellayer_dep = dependency('libchannellayer')
 
 blob_manager_pre = declare_dependency(
-  dependencies: [
-    ipmi_blob_dep,
-    dependency('ipmiblob'),
-    ipmid_dep,
-    phosphor_logging_dep,
-  ])
+    dependencies: [
+        ipmi_blob_dep,
+        dependency('ipmiblob'),
+        ipmid_dep,
+        phosphor_logging_dep,
+    ],
+)
 
 blob_manager_lib = static_library(
-  'blobmanager',
-  'fs.cpp',
-  'internal/sys.cpp',
-  'ipmi.cpp',
-  'manager.cpp',
-  'process.cpp',
-  'utils.cpp',
-  implicit_include_directories: false,
-  dependencies: blob_manager_pre)
+    'blobmanager',
+    'fs.cpp',
+    'internal/sys.cpp',
+    'ipmi.cpp',
+    'manager.cpp',
+    'process.cpp',
+    'utils.cpp',
+    implicit_include_directories: false,
+    dependencies: blob_manager_pre,
+)
 
 blob_manager_dep = declare_dependency(
-  link_with: blob_manager_lib,
-  dependencies: blob_manager_pre)
+    link_with: blob_manager_lib,
+    dependencies: blob_manager_pre,
+)
 
 conf_data = configuration_data()
 conf_data.set_quoted(
-  'BLOB_LIB_PATH',
-  get_option('prefix') / get_option('libdir') / 'blob-ipmid')
-conf_h = configure_file(
-  output: 'config.h',
-  configuration: conf_data)
+    'BLOB_LIB_PATH',
+    get_option('prefix') / get_option('libdir') / 'blob-ipmid',
+)
+conf_h = configure_file(output: 'config.h', configuration: conf_data)
 
 shared_module(
-  'blobmanager',
-  conf_h,
-  'main.cpp',
-  implicit_include_directories: false,
-  dependencies: [
-    blob_manager_dep,
-    ipmid_dep,
-    channellayer_dep,
-  ],
-  install: true,
-  install_dir: get_option('libdir') / 'ipmid-providers')
+    'blobmanager',
+    conf_h,
+    'main.cpp',
+    implicit_include_directories: false,
+    dependencies: [blob_manager_dep, ipmid_dep, channellayer_dep],
+    install: true,
+    install_dir: get_option('libdir') / 'ipmid-providers',
+)
 
 if get_option('examples')
-  subdir('example')
+    subdir('example')
 endif
 
 if get_option('tests').allowed()
-  subdir('test')
+    subdir('test')
 endif
