From c0b2905abf1e676fafb69bb05fd13401d9ac78fa Mon Sep 17 00:00:00 2001 From: Donovan Glover Date: Fri, 26 Jan 2018 23:55:39 -0500 Subject: [PATCH] Remove pass As much as I'd like to make a password manager, putting all the functionality in this repository isn't going to work. With that being said, I may or may not make an improved version of "pass" in the future. Stay tuned! --- src/pass.cr | 126 ---------------------------------------------------- 1 file changed, 126 deletions(-) delete mode 100644 src/pass.cr diff --git a/src/pass.cr b/src/pass.cr deleted file mode 100644 index 7afb1d98..00000000 --- a/src/pass.cr +++ /dev/null @@ -1,126 +0,0 @@ -################################################################################## -# -# New Start: A modern Arch workflow built with an emphasis on functionality. -# Copyright (C) 2017 Donovan Glover -# -# Pass: A very simple and straight-forward password manager -# Copyright (C) 2017 Donovan Glover -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . -# -################################################################################## - -# Pass lets you easily retrieve passwords and other sensitive information. -# Please do not confuse this pass with the standard pass utility. - -# Placeholder for the library we create to handle the plain text file format -require "txt" - -require "trucolor" - -module Pass - extend self - - def pass() - Pass.status() if ARGV.size() == 0 - case ARGV[0].delete("-") - when "get"; Pass.get() - when "status"; Pass.status() - when "help"; Pass.help() - when "add"; Pass.add() - when "remove"; Pass.remove() - when "list"; Pass.list() - when "update"; Pass.update() - when "gen"; Pass.gen() - when "new"; Pass._new() - else Pass.unknown() - end - end - - def help() - puts "Help" - exit 0 - end - - def unknown() - puts "Unknown" - exit 1 - end - - # Show statistics about password usage such as the number of passwords, - # the length of the shortest password and the length of the longest password - # Show information about any passwords that haven't been changed in a while - # TODO: Allow the user to define how long before this notice appears? - def status() - puts "Status" - exit 0 - end - - # Get the password for a specific service - # TODO: Allow the user to get other things as well (e.g. username) by explicitly specifying it? - def get() - puts "Get" - exit 0 - end - - # Add a new username / password combination to pass, allowing the user to specify - # other information as well, such as domain(s) - def add() - puts "Add" - exit 0 - end - - # Remove a specific service from the password manager - # NOTE: This may not work for multiple accounts on the same domain, depending on whether - # or not this is a feature worth implementing - def remove() - puts "Remove" - exit 0 - end - - # Shows all the services in the database but not their passwords - # TODO: Enable a user to create their own lists by using [Brackets] (?) - # If so, make these lists accessible through pass list - def list() - puts "List" - exit 0 - end - - # Update an existing password with a new password - # TODO: Decide whether you prefer `pass update` or `pass up` for this task - def update() - puts "Update" - exit 0 - end - - # Generate a new password - # TODO: Decide whether or not `pass gen` should simply generate a password - # or save it as well (maybe another method would be better for this) - def gen() - puts "Gen" - exit 0 - end - - # Add a new service with an automatically generated password - # TODO: The user must (?) specify the username and domain(s) - # TODO (?): Find a better name than _new() since new is a reserved word - # TODO (?): Make Passwords their own class (ideally they should extend from "TextItems") - def _new() - puts "New" - exit 0 - end -end - -Pass.pass() -