diff --git a/bin/daily b/bin/daily
index 10d59c698..9a441a032 100755
--- a/bin/daily
+++ b/bin/daily
@@ -32,6 +32,9 @@ $DTDIR/ietf/manage.py update_external_command_info
 # Hardcode the rsync target to avoid any unwanted deletes:
 rsync -avzq --delete rsync.ietf.org::iana/yang-parameters/ /a/www/ietf-ftp/yang/ianamod/
 
+# Get Yang models from Yangcatalog.
+rsync -avzq rsync://yangcatalog.org:10873/yangdeps /a/www/ietf-ftp/yang/catalogmod/
+
 # Populate the yang repositories
 $DTDIR/ietf/manage.py populate_yang_model_dirs -v0
 
diff --git a/ietf/checks.py b/ietf/checks.py
index 5e76035d7..0316855ff 100644
--- a/ietf/checks.py
+++ b/ietf/checks.py
@@ -152,7 +152,7 @@ def check_yang_model_directories(app_configs, **kwargs):
         return []
     #
     errors = []
-    for s in ("SUBMIT_YANG_RFC_MODEL_DIR", "SUBMIT_YANG_DRAFT_MODEL_DIR", "SUBMIT_YANG_IANA_MODEL_DIR", ):
+    for s in ("SUBMIT_YANG_RFC_MODEL_DIR", "SUBMIT_YANG_DRAFT_MODEL_DIR", "SUBMIT_YANG_IANA_MODEL_DIR", "SUBMIT_YANG_CATALOG_MODEL_DIR",):
         p = getattr(settings, s)
         if not os.path.exists(p):
             errors.append(checks.Critical(
diff --git a/ietf/settings.py b/ietf/settings.py
index c0b275b36..9250c38de 100644
--- a/ietf/settings.py
+++ b/ietf/settings.py
@@ -819,13 +819,14 @@ IDSUBMIT_DEFAULT_CUTOFF_WARNING_DAYS = datetime.timedelta(days=21)
 SUBMIT_YANG_RFC_MODEL_DIR = '/a/www/ietf-ftp/yang/rfcmod/'
 SUBMIT_YANG_DRAFT_MODEL_DIR = '/a/www/ietf-ftp/yang/draftmod/'
 SUBMIT_YANG_IANA_MODEL_DIR = '/a/www/ietf-ftp/yang/ianamod/'
+SUBMIT_YANG_CATALOG_MODEL_DIR = '/a/www/ietf-ftp/yang/catalogmod/'
 
 IDSUBMIT_REPOSITORY_PATH = INTERNET_DRAFT_PATH
 IDSUBMIT_STAGING_PATH = '/a/www/www6s/staging/'
 IDSUBMIT_STAGING_URL = '//www.ietf.org/staging/'
 IDSUBMIT_IDNITS_BINARY = '/a/www/ietf-datatracker/scripts/idnits'
 SUBMIT_PYANG_COMMAND = 'pyang --verbose --ietf -p {libs} {model}'
-SUBMIT_YANGLINT_COMMAND = 'yanglint --verbose -p {tmplib} -p {rfclib} -p {draftlib} -p {ianalib} {model} -i'
+SUBMIT_YANGLINT_COMMAND = 'yanglint --verbose -p {tmplib} -p {rfclib} -p {draftlib} -p {ianalib} -p {cataloglib} {model} -i'
 SUBMIT_YANGLINT_COMMAND = ''        # use the value above if you have yanglint installed
 
 SUBMIT_YANG_CATALOG_MODULEARG = "modules[]={module}"
diff --git a/ietf/submit/checkers.py b/ietf/submit/checkers.py
index 59db02f16..642ad820d 100644
--- a/ietf/submit/checkers.py
+++ b/ietf/submit/checkers.py
@@ -201,6 +201,7 @@ class DraftYangChecker(object):
                                 settings.SUBMIT_YANG_RFC_MODEL_DIR,
                                 settings.SUBMIT_YANG_DRAFT_MODEL_DIR,
                                 settings.SUBMIT_YANG_IANA_MODEL_DIR,
+                                settings.SUBMIT_YANG_CATALOG_MODEL_DIR,
                             ])
             if os.path.exists(path):
                 with io.open(path) as file:
@@ -242,7 +243,8 @@ class DraftYangChecker(object):
                     command = [ w for w in cmd_template.split() if not '=' in w ][0]
                     cmd_version = VersionInfo.objects.get(command=command).version
                     cmd = cmd_template.format(model=path, rfclib=settings.SUBMIT_YANG_RFC_MODEL_DIR, tmplib=workdir,
-                        draftlib=settings.SUBMIT_YANG_DRAFT_MODEL_DIR, ianalib=settings.SUBMIT_YANG_IANA_MODEL_DIR, )
+                        draftlib=settings.SUBMIT_YANG_DRAFT_MODEL_DIR, ianalib=settings.SUBMIT_YANG_IANA_MODEL_DIR,
+                        cataloglib=settings.SUBMIT_YANG_CATALOG_MODEL_DIR, )
                     code, out, err = pipe(cmd)
                     out = out.decode('utf-8')
                     err = err.decode('utf-8')
diff --git a/ietf/submit/tests.py b/ietf/submit/tests.py
index 338eccef9..9e028d159 100644
--- a/ietf/submit/tests.py
+++ b/ietf/submit/tests.py
@@ -103,6 +103,10 @@ class SubmitTests(TestCase):
         self.yang_iana_model_dir = self.tempdir('yang-iana-model')
         settings.SUBMIT_YANG_IANA_MODEL_DIR = self.yang_iana_model_dir
 
+        self.saved_yang_catalog_model_dir = settings.SUBMIT_YANG_CATALOG_MODEL_DIR
+        self.yang_catalog_model_dir = self.tempdir('yang-catalog-model')
+        settings.SUBMIT_YANG_CATALOG_MODEL_DIR = self.yang_catalog_model_dir
+
         # Submit views assume there is a "next" IETF to look for cutoff dates against
         MeetingFactory(type_id='ietf', date=datetime.date.today()+datetime.timedelta(days=180))
 
@@ -113,6 +117,7 @@ class SubmitTests(TestCase):
         shutil.rmtree(self.yang_rfc_model_dir)
         shutil.rmtree(self.yang_draft_model_dir)
         shutil.rmtree(self.yang_iana_model_dir)
+        shutil.rmtree(self.yang_catalog_model_dir)
         settings.IDSUBMIT_STAGING_PATH = self.saved_idsubmit_staging_path
         settings.INTERNET_DRAFT_PATH = self.saved_internet_draft_path
         settings.IDSUBMIT_REPOSITORY_PATH = self.saved_idsubmit_repository_path
@@ -120,6 +125,7 @@ class SubmitTests(TestCase):
         settings.SUBMIT_YANG_RFC_MODEL_DIR = self.saved_yang_rfc_model_dir
         settings.SUBMIT_YANG_DRAFT_MODEL_DIR = self.saved_yang_draft_model_dir
         settings.SUBMIT_YANG_IANA_MODEL_DIR = self.saved_yang_iana_model_dir
+        settings.SUBMIT_YANG_CATALOG_MODEL_DIR = self.saved_yang_catalog_model_dir
 
 
     def do_submission(self, name, rev, group=None, formats=["txt",], author=None):