diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,7 @@
+### 4.0.3
+
++ Update to haskell-gi(-base)-0.25
+
 ### 4.0.2
 
 + Upgrade to haskell-gi-base-0.24
diff --git a/Gdk.overrides b/Gdk.overrides
--- a/Gdk.overrides
+++ b/Gdk.overrides
@@ -0,0 +1,3 @@
+# In most APIs these are used as guint, but they are declared as gint.
+# See https://github.com/haskell-gi/haskell-gi/issues/58
+set-attr Gdk/~KEY_.*@constant/@type name guint
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
 # Documentation
 Autogenerated documentation for this package can be found at
 
-[https://hackage.haskell.org/package/gi-gdk-4.0.2/docs/GI-Gdk.html](https://hackage.haskell.org/package/gi-gdk-4.0.2/docs/GI-Gdk.html)
+[https://hackage.haskell.org/package/gi-gdk-4.0.3/docs/GI-Gdk.html](https://hackage.haskell.org/package/gi-gdk-4.0.3/docs/GI-Gdk.html)
 
 For general documentation on using [haskell-gi](https://github.com/haskell-gi/haskell-gi) based bindings, see [the project page](https://github.com/haskell-gi/haskell-gi) or [the Wiki](https://github.com/haskell-gi/haskell-gi/wiki).
diff --git a/Setup.hs b/Setup.hs
--- a/Setup.hs
+++ b/Setup.hs
@@ -11,9 +11,11 @@
 
 
 main :: IO ()
-main = setupBinding name version verbose overridesFile inheritedOverrides outputDir
+main = setupBinding name version pkgName pkgVersion verbose overridesFile inheritedOverrides outputDir
   where name = "Gdk"
         version = "4.0"
+        pkgName = "gi-gdk"
+        pkgVersion = "4.0.3"
         overridesFile = Just "Gdk.overrides"
         verbose = False
         outputDir = Nothing
diff --git a/gi-gdk.cabal b/gi-gdk.cabal
--- a/gi-gdk.cabal
+++ b/gi-gdk.cabal
@@ -1,5 +1,5 @@
 name:                 gi-gdk
-version:              4.0.2
+version:              4.0.3
 synopsis:             Gdk bindings
 description:          Bindings for Gdk, autogenerated by haskell-gi.
 homepage:             https://github.com/haskell-gi/haskell-gi
@@ -9,14 +9,14 @@
 maintainer:           Iñaki García Etxebarria
 category:             Bindings
 build-type:           Custom
-cabal-version:        1.24
+cabal-version:        2.0
 
 extra-source-files: README.md ChangeLog.md stack.yaml Gdk.overrides
 
 custom-setup
       setup-depends: base >= 4.9 && < 5,
                      Cabal >= 1.24,
-                     haskell-gi >= 0.24 && < 0.25,
+                     haskell-gi >= 0.25 && < 0.26,
                      gi-cairo == 1.0.*,
                      gi-pango == 1.0.*,
                      gi-gio == 2.0.*,
@@ -32,8 +32,8 @@
 
       pkgconfig-depends: gtk4
       build-depends: base >= 4.9 && <5,
-                     haskell-gi-base >= 0.24 && < 0.25,
-                     haskell-gi >= 0.24.0 && < 0.25,
+                     haskell-gi-base >= 0.25 && < 0.26,
+                     haskell-gi >= 0.25 && < 0.26,
                      haskell-gi-overloading < 1.1,
                      gi-cairo == 1.0.*,
                      gi-pango == 1.0.*,
@@ -75,7 +75,6 @@
                        GI.Gdk.Objects.ButtonEvent,
                        GI.Gdk.Objects.CairoContext,
                        GI.Gdk.Objects.Clipboard,
-                       GI.Gdk.Objects.ConfigureEvent,
                        GI.Gdk.Objects.ContentDeserializer,
                        GI.Gdk.Objects.ContentProvider,
                        GI.Gdk.Objects.ContentSerializer,
@@ -116,14 +115,13 @@
                        GI.Gdk.Structs.DrawingContext,
                        GI.Gdk.Structs.EventSequence,
                        GI.Gdk.Structs.FrameTimings,
-                       GI.Gdk.Structs.Geometry,
                        GI.Gdk.Structs.KeymapKey,
-                       GI.Gdk.Structs.Point,
                        GI.Gdk.Structs.PopupLayout,
                        GI.Gdk.Structs.RGBA,
                        GI.Gdk.Structs.Rectangle,
                        GI.Gdk.Structs.TimeCoord,
-                       GI.Gdk.Structs.ToplevelLayout
+                       GI.Gdk.Structs.ToplevelLayout,
+                       GI.Gdk.Structs.ToplevelSize
 
       autogen-modules: GI.Gdk.Config,
                        GI.Gdk,
@@ -143,7 +141,6 @@
                        GI.Gdk.Objects.ButtonEvent,
                        GI.Gdk.Objects.CairoContext,
                        GI.Gdk.Objects.Clipboard,
-                       GI.Gdk.Objects.ConfigureEvent,
                        GI.Gdk.Objects.ContentDeserializer,
                        GI.Gdk.Objects.ContentProvider,
                        GI.Gdk.Objects.ContentSerializer,
@@ -184,11 +181,10 @@
                        GI.Gdk.Structs.DrawingContext,
                        GI.Gdk.Structs.EventSequence,
                        GI.Gdk.Structs.FrameTimings,
-                       GI.Gdk.Structs.Geometry,
                        GI.Gdk.Structs.KeymapKey,
-                       GI.Gdk.Structs.Point,
                        GI.Gdk.Structs.PopupLayout,
                        GI.Gdk.Structs.RGBA,
                        GI.Gdk.Structs.Rectangle,
                        GI.Gdk.Structs.TimeCoord,
-                       GI.Gdk.Structs.ToplevelLayout
+                       GI.Gdk.Structs.ToplevelLayout,
+                       GI.Gdk.Structs.ToplevelSize
