diff --git a/.fuse-overlayfs.metadata b/.fuse-overlayfs.metadata
index 27f2753..0379741 100644
--- a/.fuse-overlayfs.metadata
+++ b/.fuse-overlayfs.metadata
@@ -1 +1 @@
-aae77fbe5e212349100445fd0b63891d7d60f7e6 SOURCES/fuse-overlayfs-8c59873.tar.gz
+aea6a90f46a525c3e647a47126e2f9560125daf1 SOURCES/v1.0.0.tar.gz
diff --git a/.gitignore b/.gitignore
index d28e987..58b6875 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1 @@
-SOURCES/fuse-overlayfs-8c59873.tar.gz
+SOURCES/v1.0.0.tar.gz
diff --git a/SOURCES/fuse-overlayfs-1803496.patch b/SOURCES/fuse-overlayfs-1803496.patch
deleted file mode 100644
index c462f07..0000000
--- a/SOURCES/fuse-overlayfs-1803496.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From bd0246fa31ae596fed3a7f94917523798e2ab3c8 Mon Sep 17 00:00:00 2001
-From: Giuseppe Scrivano <gscrivan@redhat.com>
-Date: Sat, 15 Feb 2020 12:33:52 +0100
-Subject: [PATCH] main: force timeout 0 for ovl_link
-
-There is an issue on RHEL 8.1 where the nlink counter is always
-incremented by one, no matter what is specified in e.attr.st_nlink.
-
-Always set timeout to 0 to force a new stat on the inode.
-
-Closes: https://bugzilla.redhat.com/show_bug.cgi?id=1802907
-Closes: https://github.com/containers/fuse-overlayfs/issues/183
-
-Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
----
- main.c | 9 ++++++++-
- 1 file changed, 8 insertions(+), 1 deletion(-)
-
-diff --git a/main.c b/main.c
-index 80c0f89..0e6dab3 100644
---- a/main.c
-+++ b/main.c
-@@ -3714,6 +3714,12 @@ direct_linkat (struct ovl_layer *l, const char *oldpath, const char *newpath, in
- static void
- ovl_link (fuse_req_t req, fuse_ino_t ino, fuse_ino_t newparent, const char *newname)
- {
-+  /*
-+     There is an issue on RHEL 8.1 where the nlink counter is always
-+     incremented by one, no matter what is specified in e.attr.st_nlink.
-+     In this function we always set timeout to 0 to force a new stat on the inode.
-+   */
-+
-   cleanup_lock int l = enter_big_lock ();
-   struct ovl_data *lo = ovl_data (req);
-   struct ovl_node *node, *newparentnode, *destnode;
-@@ -3809,7 +3815,8 @@ ovl_link (fuse_req_t req, fuse_ino_t ino, fuse_ino_t newparent, const char *newn
- 
-   e.ino = node_to_inode (node);
-   node->ino->lookups++;
--  e.attr_timeout = get_timeout (lo);
-+
-+  e.attr_timeout = 0;
-   e.entry_timeout = get_timeout (lo);
-   fuse_reply_entry (req, &e);
- }
--- 
-2.24.1
-
diff --git a/SOURCES/fuse-overlayfs-1804849.patch b/SOURCES/fuse-overlayfs-1804849.patch
deleted file mode 100644
index bf75003..0000000
--- a/SOURCES/fuse-overlayfs-1804849.patch
+++ /dev/null
@@ -1,189 +0,0 @@
-From 214d606084453f0d2831317a9048a3cbc554fcc4 Mon Sep 17 00:00:00 2001
-From: Giuseppe Scrivano <gscrivan@redhat.com>
-Date: Wed, 15 Jan 2020 00:02:43 +0100
-Subject: [PATCH 1/2] main: check if file is whiteout
-
-when doing a lookup, make sure the returned file is not a whiteout for
-functions that expect the file to exist.
-
-Close: https://github.com/containers/fuse-overlayfs/issues/169
-
-Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
----
- main.c | 34 +++++++++++++++++-----------------
- 1 file changed, 17 insertions(+), 17 deletions(-)
-
-
-From ce93abae5fcb3be98867bbfd8e13abb2c086d1c2 Mon Sep 17 00:00:00 2001
-From: Giuseppe Scrivano <gscrivan@redhat.com>
-Date: Wed, 15 Jan 2020 17:52:13 +0100
-Subject: [PATCH 2/2] main: do not copyup opaque xattr
-
-when performing the copyup, do not copy the private xattrs.
-
-Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
----
- main.c | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
-diff -up ./fuse-overlayfs-8c59873b00b3e8ee98be998fec8dbce4cfe984cc/main.c.1804849 ./fuse-overlayfs-8c59873b00b3e8ee98be998fec8dbce4cfe984cc/main.c
---- fuse-overlayfs-8c59873b00b3e8ee98be998fec8dbce4cfe984cc/main.c.1804849	2020-02-20 14:38:04.204508810 +0100
-+++ fuse-overlayfs-8c59873b00b3e8ee98be998fec8dbce4cfe984cc/main.c	2020-02-20 14:38:04.208508867 +0100
-@@ -2265,7 +2265,7 @@ ovl_getxattr (fuse_req_t req, fuse_ino_t
-     }
- 
-   node = do_lookup_file (lo, ino, NULL);
--  if (node == NULL)
-+  if (node == NULL || node->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
-@@ -2334,7 +2334,13 @@ copy_xattr (int sfd, int dfd, char *buf,
-       for (it = buf; it - buf < xattr_len; it += strlen (it) + 1)
-         {
-           cleanup_free char *v = NULL;
--          ssize_t s = safe_read_xattr (&v, sfd, it, 256);
-+          ssize_t s;
-+
-+          if (has_prefix (it, XATTR_PREFIX)
-+              || has_prefix (it, PRIVILEGED_XATTR_PREFIX))
-+            continue;
-+
-+          s = safe_read_xattr (&v, sfd, it, 256);
-           if (s < 0)
-             return -1;
- 
-@@ -2858,7 +2864,7 @@ do_rm (fuse_req_t req, fuse_ino_t parent
-   struct ovl_node key, *rm;
- 
-   node = do_lookup_file (lo, parent, name);
--  if (node == NULL)
-+  if (node == NULL || node->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
-@@ -2904,7 +2910,7 @@ do_rm (fuse_req_t req, fuse_ino_t parent
-     }
- 
-   pnode = do_lookup_file (lo, parent, NULL);
--  if (pnode == NULL)
-+  if (pnode == NULL || pnode->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
-@@ -3009,7 +3015,7 @@ ovl_setxattr (fuse_req_t req, fuse_ino_t
-     }
- 
-   node = do_lookup_file (lo, ino, NULL);
--  if (node == NULL)
-+  if (node == NULL || node->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
-@@ -3069,7 +3075,7 @@ ovl_removexattr (fuse_req_t req, fuse_in
-     fprintf (stderr, "ovl_removexattr(ino=%" PRIu64 "s, name=%s)\n", ino, name);
- 
-   node = do_lookup_file (lo, ino, NULL);
--  if (node == NULL)
-+  if (node == NULL || node->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
-@@ -3447,7 +3453,7 @@ ovl_getattr (fuse_req_t req, fuse_ino_t
-     fprintf (stderr, "ovl_getattr(ino=%" PRIu64 ")\n", ino);
- 
-   node = do_lookup_file (lo, ino, NULL);
--  if (node == NULL)
-+  if (node == NULL || node->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
-@@ -3481,7 +3487,7 @@ ovl_setattr (fuse_req_t req, fuse_ino_t
-     fprintf (stderr, "ovl_setattr(ino=%" PRIu64 "s, to_set=%d)\n", ino, to_set);
- 
-   node = do_lookup_file (lo, ino, NULL);
--  if (node == NULL)
-+  if (node == NULL || node->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
-@@ -3663,7 +3669,7 @@ ovl_link (fuse_req_t req, fuse_ino_t ino
-     fprintf (stderr, "ovl_link(ino=%" PRIu64 "s, newparent=%" PRIu64 "s, newname=%s)\n", ino, newparent, newname);
- 
-   node = do_lookup_file (lo, ino, NULL);
--  if (node == NULL)
-+  if (node == NULL || node->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
-@@ -3677,7 +3683,7 @@ ovl_link (fuse_req_t req, fuse_ino_t ino
-     }
- 
-   newparentnode = do_lookup_file (lo, newparent, NULL);
--  if (newparentnode == NULL)
-+  if (newparentnode == NULL || newparentnode->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
-@@ -3802,7 +3808,7 @@ ovl_symlink (fuse_req_t req, const char
-     fprintf (stderr, "ovl_symlink(link=%s, ino=%" PRIu64 "s, name=%s)\n", link, parent, name);
- 
-   pnode = do_lookup_file (lo, parent, NULL);
--  if (pnode == NULL)
-+  if (pnode == NULL || pnode->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
-@@ -3896,7 +3902,7 @@ ovl_rename_exchange (fuse_req_t req, fus
-   char *tmp;
- 
-   node = do_lookup_file (lo, parent, name);
--  if (node == NULL)
-+  if (node == NULL || node->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
-@@ -4255,7 +4261,7 @@ ovl_readlink (fuse_req_t req, fuse_ino_t
-     fprintf (stderr, "ovl_readlink(ino=%" PRIu64 "s)\n", ino);
- 
-   node = do_lookup_file (lo, ino, NULL);
--  if (node == NULL)
-+  if (node == NULL || node->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
-@@ -4661,7 +4667,7 @@ ovl_ioctl (fuse_req_t req, fuse_ino_t in
-              ino, cmd, arg, fi, flags, in_buf, in_bufsz, out_bufsz);
- 
-   node = do_lookup_file (lo, ino, NULL);
--  if (node == NULL)
-+  if (node == NULL || node->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
-@@ -4730,7 +4736,7 @@ ovl_fallocate (fuse_req_t req, fuse_ino_
-              ino, mode, offset, length, fi);
- 
-   node = do_lookup_file (lo, ino, NULL);
--  if (node == NULL)
-+  if (node == NULL || node->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
-@@ -4781,14 +4787,14 @@ ovl_copy_file_range (fuse_req_t req, fus
-              ino_in, off_in, fi_in, ino_out, off_out, fi_out, len, flags);
- 
-   node = do_lookup_file (lo, ino_in, NULL);
--  if (node == NULL)
-+  if (node == NULL || node->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
-     }
- 
-   dnode = do_lookup_file (lo, ino_out, NULL);
--  if (dnode == NULL)
-+  if (dnode == NULL || dnode->whiteout)
-     {
-       fuse_reply_err (req, ENOENT);
-       return;
diff --git a/SPECS/fuse-overlayfs.spec b/SPECS/fuse-overlayfs.spec
index 3ec0750..2aa512c 100644
--- a/SPECS/fuse-overlayfs.spec
+++ b/SPECS/fuse-overlayfs.spec
@@ -1,21 +1,13 @@
 %global git0 https://github.com/containers/%{name}
-%global commit0 8c59873b00b3e8ee98be998fec8dbce4cfe984cc
-%global shortcommit0 %(c=%{commit0}; echo ${c:0:7})
 
 Name: fuse-overlayfs
-Version: 0.7.2
-Release: 5%{?dist}
+Version: 1.0.0
+Release: 2%{?dist}
 Summary: FUSE overlay+shiftfs implementation for rootless containers
 License: GPLv3+
 URL: %{git0}
 ExclusiveArch: aarch64 %{arm} ppc64le s390x x86_64
-Source0: %{git0}/archive/%{commit0}/%{name}-%{shortcommit0}.tar.gz
-# related bug: https://bugzilla.redhat.com/show_bug.cgi?id=1802907
-# backported:  https://patch-diff.githubusercontent.com/raw/containers/fuse-overlayfs/pull/184.patch
-Patch0: fuse-overlayfs-1803496.patch
-# related bug: https://bugzilla.redhat.com/show_bug.cgi?id=1804849
-# patch:  https://bugzilla.redhat.com/attachment.cgi?id=1666385
-Patch1: fuse-overlayfs-1804849.patch
+Source0: %{git0}/archive/v%{version}.tar.gz
 BuildRequires: autoconf
 BuildRequires: automake
 BuildRequires: fuse3-devel
@@ -23,7 +15,6 @@ BuildRequires: gcc
 BuildRequires: git
 BuildRequires: go-md2man
 BuildRequires: make
-Provides: bundled(gnulib) = cb634d40c7b9bbf33fa5198d2e27fdab4c0bf143
 
 %description
 %{summary}.
@@ -40,7 +31,7 @@ building other packages which use import path with
 %{import_path} prefix.
 
 %prep
-%autosetup -Sgit -n %{name}-%{commit0}
+%autosetup -Sgit
 
 %build
 ./autogen.sh
@@ -62,6 +53,18 @@ make DESTDIR=%{buildroot} install install-man
 %{_mandir}/man1/%{name}.1.gz
 
 %changelog
+* Thu Apr 30 2020 Jindrich Novy <jnovy@redhat.com> - 1.0.0-2
+- remove bogus Provides from spec
+- Related: RHELPLAN-39206
+
+* Mon Apr 20 2020 Jindrich Novy <jnovy@redhat.com> - 1.0.0-1
+- update to https://github.com/containers/fuse-overlayfs/releases/tag/v1.0.0
+- Related: RHELPLAN-39206
+
+* Wed Apr 08 2020 Jindrich Novy <jnovy@redhat.com> - 0.7.8-1
+- update to https://github.com/containers/fuse-overlayfs/releases/tag/v0.7.8
+- Related: #1821204
+
 * Thu Mar 19 2020 Jindrich Novy <jnovy@redhat.com> - 0.7.2-5
 - latest iteration of segfault fix patch, thanks to Giuseppe Scrivano
 - Resolves: #1805017