Categories
General

am i doing this right?

A plate with sections for food types, two hot dogs on the side for protein and grains. On the other half, three hot peppers. The side with hot peppers is labelled "Vegetables and Fruits".
Categories
General

Install Request Tracker on Fedora Workstation 31

Requirements

You’ll need the following:

  • Perl
  • Make
  • Curl
  • SQLite
  • esmtp or ssmtp (or a Sendmail alternative)
  • Many additional Perl modules

Installing Requirements

Use the following commands to install all the requirements for Request Tracker version 4.4.4.

# Base requirements
sudo dnf install curl esmtp make perl sqlite

# Installing the Perl modules in several batches
sudo dnf install \
    "perl(Term::ReadKey)" \
    "perl(Getopt::Long)" \
    "perl(Text::ParseWords)" \
    "perl(Term::ReadLine)" \
    "perl(Digest::SHA)" \
    "perl(Pod::Select)" \
    "perl(Digest::MD5)" \
    "perl(Storable)" \
    "perl(Text::Template)" \
    "perl(Time::HiRes)" \
    "perl(Sys::Syslog)" \
    "perl(Digest::base)" \
    "perl(URI::QueryParam)" \
    "perl(File::Glob)" \
    "perl(File::Spec)" \
    "perl(Scalar::Util)" \
    "perl(Encode)" \
    "perl(File::Temp)" \
    "perl(Errno)" \
    "perl(URI)" \
    "perl(Locale::Maketext)" \
    "perl(File::Which)" \
    "perl(Pod::Usage)" \
    "perl(Getopt::Long)" \
    "perl(Mozilla::CA)" \
    "perl(File::Which)"

sudo dnf install \
    "perl(Apache::Session)" \
    "perl(Business::Hours)" \
    "perl(CGI::Cookie)" \
    "perl(CGI::Emulate::PSGI)" \
    "perl(CGI::PSGI)" \
    "perl(CGI)" \
    "perl(Class::Accessor::Fast)" \
    "perl(Clone)" \
    "perl(Convert::Color)" \
    "perl(Crypt::Eksblowfish)" \
    "perl(Crypt::X509)" \
    "perl(CSS::Minifier::XS)" \
    "perl(CSS::Squish)" \
    "perl(Data::GUID)" \
    "perl(Data::ICal)" \
    "perl(Data::Page::Pageset)" \
    "perl(Date::Extract)" \
    "perl(Date::Manip)" \
    "perl(DateTime::Format::Natural)" \
    "perl(DateTime::Locale)" \
    "perl(DateTime)" \
    "perl(DBD::SQLite)" \
    "perl(DBI)" \
    "perl(DBIx::SearchBuilder)" \
    "perl(Devel::GlobalDestruction)" \
    "perl(Devel::StackTrace)" \
    "perl(Email::Address::List)" \
    "perl(Email::Address)" \
    "perl(File::ShareDir)" 

sudo dnf install \
    "perl(GD::Graph)" \
    "perl(GD::Text)" \
    "perl(GD)" \
    "perl(GnuPG::Interface)" \
    "perl(GraphViz)" \
    "perl(HTML::Entities)" \
    "perl(HTML::FormatText::WithLinks::AndTables)" \
    "perl(HTML::FormatText::WithLinks)" \
    "perl(HTML::Mason::PSGIHandler)" \
    "perl(HTML::Mason)" \
    "perl(HTML::Quoted)" \
    "perl(HTML::RewriteAttributes)" \
    "perl(HTML::Scrubber)" \
    "perl(HTTP::Message)" \
    "perl(IPC::Run)" \
    "perl(IPC::Run3)" \
    "perl(JavaScript::Minifier::XS)" \
    "perl(JSON)" \
    "perl(List::MoreUtils)" \
    "perl(Locale::Maketext::Fuzzy)" \
    "perl(Locale::Maketext::Lexicon)" \
    "perl(Log::Dispatch)" \
    "perl(LWP::Protocol::https)" \
    "perl(LWP::Simple)" \
    "perl(LWP::UserAgent)" \
    "perl(Mail::Header)" \
    "perl(Mail::Mailer)" \
    "perl(MIME::Entity)" \
    "perl(MIME::Types)" \
    "perl(Module::Refresh)" \
    "perl(Module::Versions::Report)" 

sudo dnf install \
    "perl(Net::CIDR)" \
    "perl(Net::IP)" \
    "perl(PerlIO::eol)" \
    "perl(Plack::Handler::Starlet)" \
    "perl(Plack)" \
    "perl(Regexp::Common::net::CIDR)" \
    "perl(Regexp::Common)" \
    "perl(Regexp::IPv6)" \
    "perl(Role::Basic)" \
    "perl(Scope::Upper)" \
    "perl(String::ShellQuote)" \
    "perl(Symbol::Global::Name)" \
    "perl(Text::Password::Pronounceable)" \
    "perl(Text::Quoted)" \
    "perl(Text::WikiFormat)" \
    "perl(Text::Wrapper)" \
    "perl(Time::ParseDate)" \
    "perl(Tree::Simple)" \
    "perl(UNIVERSAL::require)" \
    "perl(XML::RSS)"

Download and Unpack Request Tracker

mkdir ~/rt-install
cd ~/rt-install
curl -C - -O "https://download.bestpractical.com/pub/rt/release/rt-4.4.4.tar.gz"
tar xzf ./rt-4.4.4.tar.gz
cd rt-4.4.4

Configure Request Tracker

We’re going to install to $HOME/rt4 with SQLite and use the built-in server.

./configure --prefix=$HOME/rt4 \
    --enable-graphviz \
    --enable-gd \
    --enable-gpg \
    --enable-smime \
    --with-web-handler=standalone \
    --with-db-type=SQLite \
    --with-my-user-group \
    --with-attachment-store=disk

Verify Dependencies are Installed

You’ll want to ensure that everything is ready for install:

make testdeps
# You should see a line at then end stating that
# all dependencies are available.

Install Request Tracker

make install

Configure Installation

Run the built-in server and then browse to http://localhost:8080 to finish the installation. For database setup, you can keep the defaults.

# Run the built-in server
$HOME/rt4/sbin/rt-server --port 8080

Finished

You may need to restart the server once you’ve finished the configuration depending on the options specified.

Alternative Install Method

dnf install rt
Categories
General

YouTube Pop-Out Bookmarlet

Often times I’ll have a YouTube video playing while I use my computer. I’ve made a bookmarklet to open the embed version of a video which removes a lot of the wasted space on the page so that I can keep the window in the top right corner of my screen. You can use it by dragging the link below to your Bookmark Toolbar. When you click the bookmark, it will pause the current video and open a new window at the same timestamp in the video.
See this snippet on the JavaScript required.
Edit: Updated to auto play video.