{"id":25077946,"url":"https://github.com/egberts/exim4-config-check-which","last_synced_at":"2026-05-06T13:08:54.603Z","repository":{"id":89061996,"uuid":"474082593","full_name":"egberts/exim4-config-check-which","owner":"egberts","description":"Determine which set of configuration files are being used by Exim4 mail server on Debian OS distro","archived":false,"fork":false,"pushed_at":"2022-03-26T18:27:46.000Z","size":25,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-07T02:41:28.360Z","etag":null,"topics":["bash-script","debian","debian-only","exim","exim4","template"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/egberts.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-03-25T16:20:58.000Z","updated_at":"2022-04-12T18:53:24.000Z","dependencies_parsed_at":"2023-06-13T18:45:36.511Z","dependency_job_id":null,"html_url":"https://github.com/egberts/exim4-config-check-which","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egberts%2Fexim4-config-check-which","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egberts%2Fexim4-config-check-which/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egberts%2Fexim4-config-check-which/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egberts%2Fexim4-config-check-which/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/egberts","download_url":"https://codeload.github.com/egberts/exim4-config-check-which/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246563380,"owners_count":20797448,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash-script","debian","debian-only","exim","exim4","template"],"created_at":"2025-02-07T02:40:20.750Z","updated_at":"2026-05-06T13:08:49.566Z","avatar_url":"https://github.com/egberts.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# exim4-config-check-which [![Codacy Badge](https://app.codacy.com/project/badge/Grade/efdadac7620b466fbabe127b20df03fd)](https://www.codacy.com/gh/egberts/exim4-config-check-which/dashboard?utm_source=github.com\u0026amp;utm_medium=referral\u0026amp;utm_content=egberts/exim4-config-check-which\u0026amp;utm_campaign=Badge_Grade)\n\nSetting up Exim4 mail server?  \n\nGot tired of guessing WHICH file to edit?  \n\nEven after reading the 'man update-exim4.conf' manpage ... repeatedly?\n\nThis will help you determine which set of configuration files are being used by Exim4 mail server on your Debian OS distro.\n\n## Weird Naming Convention\n\nNaming convention could have been more intuitive.  Such as:\n\n* `update-exim4.conf` could be better named as `update-exim4-conf` (or `update-exim4`, or even better as `exim4-update-debian`, or best as `dpkgc-exim4`)\n* `update-exim4.conf.conf` could be better named as `exim4.debian.conf`: then we would know which one to go to between `exim4.conf`/`exim4.conf.debian`.\n* `update-exim4.conf.template` ... whew ... could have been `exim4.conf.template.debian`.\n* `/var/lib/exim4/config.autogenerated` could have beeen `/var/lib/exim4/exim4.conf.autogenerated`.\n\n## Debian Split-Configuration\n\nA run example for the split-configuration method of Exim4 configuration files:\n\n```console\n# ~/bin/exim4-config-check-which.sh \nDetermine which configs file that Exim4 is using.\n\nCompiled-in config lookup sequence by /usr/sbin/exim4:\nConfiguration file search path is /etc/exim4/exim4.conf:/var/lib/exim4/config.autogenerated\nConfiguration file is /var/lib/exim4/config.autogenerated\n/usr/sbin/exim4 is now using this config file:\n              /var/lib/exim4/config.autogenerated\n\nReading /etc/exim4/update-exim4.conf.conf for its settings ...\n'dc_use_split_config' is set to 'true' in /etc/exim4/update-exim4.conf.conf\n  ignores          : /etc/exim4/exim4.conf\n  ignores          : /etc/exim4/exim4.conf.template\n\n  reads from       : /etc/exim4/update-exim4.conf.conf\n  reads from       : /etc/exim4/exim4.conf.localmacros\n  writes to        : /var/lib/exim4/config.autogenerated\n  daemon reads from: /var/lib/exim4/config.autogenerated\n```\n\n## Debian Non-Split-Configuration\n\nIf using Debian non-split configuration, then:\n\n```console\n# ~/bin/exim4-config-check-which.sh \nDetermine which configs file that Exim4 is using.\n\nCompiled-in config lookup sequence by /usr/sbin/exim4:\nConfiguration file search path is /etc/exim4/exim4.conf:/var/lib/exim4/config.autogenerated\nConfiguration file is /var/lib/exim4/config.autogenerated\n/usr/sbin/exim4 is now using this config file:\n              /var/lib/exim4/config.autogenerated\n\nReading /etc/exim4/update-exim4.conf.conf for its settings ...\n'dc_use_split_config' is set to 'false' in /etc/exim4/update-exim4.conf.conf\n  ignores          : /etc/exim4/exim4.conf\n  ignores          : /etc/exim4/update-exim4.conf.conf\n  ignores          : /etc/exim4/exim4.conf.localmacros\n\n  reads from       : /etc/exim4/exim4.conf.template\n  writes to        : /var/lib/exim4/config.autogenerated\n  daemon reads from: /var/lib/exim4/config.autogenerated\n```\n\n## Debian has `/etc/exim4/exim4.conf` file\n\nIf a Debian is missing `/etc/update-exim4.conf.conf` but has the required `/etc/exim4/exim4.conf`, then:\n\n```console\n# bash exim4-config-check-which.sh \nDetermine which configs file that Exim4 is using.\n\nCompiled-in config lookup sequence by /usr/sbin/exim4:\n2022-03-25 13:14:38 Warning: purging the environment.\n Suggested action: use keep_environment.\nConfiguration file search path is /etc/exim4/exim4.conf:/var/lib/exim4/config.autogenerated\nConfiguration file is /etc/exim4/exim4.conf\n/usr/sbin/exim4 is now using this config file:\n              /etc/exim4/exim4.conf\n\nExim4 daemon will:\n  Ignores          : /etc/exim4/update-exim4.conf.conf\n  Ignores          : /etc/exim4/exim4.conf.template\n  Ignores          : /etc/exim4/exim4.conf.localmacros\n(update-exim4.conf writes nothing)\n\n  daemon reads from: /etc/exim4/exim4.conf\n```\n\n## `/etc/exim4/exim4.conf` AND `/var/lib/exim4/config.autogenerated`\n\nIf a Debian had been transitioned to `exim.conf` but left an\nartifact file behind that is named `/var/lib/exim4/config.autogenerated`, then\n\n```console\n# ~/bin/exim4-config-check-which.sh \nDetermine which configs file that Exim4 is using.\n\nCompiled-in config lookup sequence by /usr/sbin/exim4:\n2022-03-25 13:28:04 Warning: purging the environment.\n Suggested action: use keep_environment.\nConfiguration file search path is /etc/exim4/exim4.conf:/var/lib/exim4/config.autogenerated\nConfiguration file is /etc/exim4/exim4.conf\n/usr/sbin/exim4 is now using this config file:\n              /etc/exim4/exim4.conf\n\nExim4 daemon will:\n  Ignores          : /etc/exim4/update-exim4.conf.conf\n  Ignores          : /etc/exim4/exim4.conf.template\n  Ignores          : /etc/exim4/exim4.conf.localmacros\n(update-exim4.conf writes nothing)\n\n  daemon reads from: /etc/exim4/exim4.conf\n\nWARNING: there is a lingering Debian artifact file that needs removing:\n    /var/lib/exim4/config.autogenerated\n```\n\n## Debian host is missing both `/etc` files\n\nIf both config files are missing but ...\nthe `/var/lib/exim4/config.autogenerated` exists, then\n\n```console\n# ~/bin/exim4-config-check-which.sh \nDetermine which configs file that Exim4 is using.\n\nCompiled-in config lookup sequence by /usr/sbin/exim4:\nConfiguration file search path is /etc/exim4/exim4.conf:/var/lib/exim4/config.autogenerated\nConfiguration file is /var/lib/exim4/config.autogenerated\n/usr/sbin/exim4 is now using this config file:\n              /var/lib/exim4/config.autogenerated\n\nWARNING: No configuration files found in /etc/exim4 directory.\nWARNING: Exim4 daemon using the following UNKNOWN config file:\n    /var/lib/exim4/config.autogenerated\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fegberts%2Fexim4-config-check-which","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fegberts%2Fexim4-config-check-which","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fegberts%2Fexim4-config-check-which/lists"}