diff --git a/yackage.cabal b/yackage.cabal
--- a/yackage.cabal
+++ b/yackage.cabal
@@ -1,5 +1,5 @@
 Name:                yackage
-Version:             0.1.0
+Version:             0.1.0.1
 Synopsis:            Personal Hackage replacement for testing new packages.
 Description:
     This package installs a yackage executable that runs a simplistic hackage-like server. It allows you to upload packages produced via cabal sdist and install them via cabal. The trick is to add the yackage repository to your cabal config file, with a line such as:
@@ -15,30 +15,46 @@
 Build-type:          Simple
 Cabal-version:       >=1.6
 
+flag yackage
+  default: True
+  description: Whether to build the yackage program itself.
+
+flag upload
+  default: True
+  description: Whether to build the yackage-upload helper program.
+
 Executable yackage
   Main-is:             yackage.hs
-  Build-depends:       base >= 4 && < 5
-                     , yesod-core >= 0.7 && < 0.8
-                     , warp
-                     , Cabal
-                     , bytestring
-                     , text
-                     , zlib
-                     , tar
-                     , containers
-                     , directory
-                     , data-object
-                     , data-object-yaml
-                     , cmdargs
-                     , wai
-                     , transformers
-                     , hamlet
-                     , yesod-form
+  if flag(yackage)
+      Build-depends:       base >= 4 && < 5
+                         , yesod-core >= 0.7 && < 0.8
+                         , warp
+                         , Cabal
+                         , bytestring
+                         , text
+                         , zlib
+                         , tar
+                         , containers
+                         , directory
+                         , data-object
+                         , data-object-yaml
+                         , cmdargs
+                         , wai
+                         , transformers
+                         , hamlet
+                         , yesod-form
+  else
+    Buildable: False
 
 Executable yackage-upload
   Main-is:             yackage-upload.hs
-  Build-depends:       http-enumerator >= 0.5.1 && < 0.6
-                     , blaze-builder >= 0.2.1.3 && < 0.4
+  if flag(upload)
+      Build-depends:       base >= 4 && < 5
+                         , http-enumerator >= 0.5.1 && < 0.6
+                         , blaze-builder >= 0.2.1.3 && < 0.4
+                         , bytestring
+  else
+    Buildable: False
   
 source-repository head
   type:     git
