diff --git a/Userland/Utilities/CMakeLists.txt b/Userland/Utilities/CMakeLists.txt index 16372b89c8..5c106a8f14 100644 --- a/Userland/Utilities/CMakeLists.txt +++ b/Userland/Utilities/CMakeLists.txt @@ -160,6 +160,7 @@ target_link_libraries(top LibMain) target_link_libraries(touch LibMain) target_link_libraries(truncate LibMain) target_link_libraries(tt LibPthread) +target_link_libraries(umount LibMain) target_link_libraries(uname LibMain) target_link_libraries(uniq LibMain) target_link_libraries(unzip LibArchive LibCompress LibMain) diff --git a/Userland/Utilities/umount.cpp b/Userland/Utilities/umount.cpp index 775415dcd1..62cfc2a0ac 100644 --- a/Userland/Utilities/umount.cpp +++ b/Userland/Utilities/umount.cpp @@ -5,20 +5,17 @@ */ #include -#include -#include +#include +#include -int main(int argc, char** argv) +ErrorOr serenity_main(Main::Arguments arguments) { - const char* mount_point = nullptr; + StringView mount_point; Core::ArgsParser args_parser; args_parser.add_positional_argument(mount_point, "Mount point", "mountpoint"); - args_parser.parse(argc, argv); + args_parser.parse(arguments); - if (umount(mount_point) < 0) { - perror("umount"); - return 1; - } + TRY(Core::System::umount(mount_point)); return 0; }