diff --git a/helpers/DATA/dpkg/Trisquel.pm b/helpers/DATA/dpkg/Trisquel.pm
index d0b9d606e01108799276455fbbc139d02320e0db..3710ff75f3f2f9c03822dd39a127602be69ab1ee 100644
--- a/helpers/DATA/dpkg/Trisquel.pm
+++ b/helpers/DATA/dpkg/Trisquel.pm
@@ -3,6 +3,7 @@
 #   written by Colin Watson <cjwatson@ubuntu.com>
 # Copyright © 2008 James Westby <jw+debian@jameswestby.net>
 # Copyright © 2009 Raphaël Hertzog <hertzog@debian.org>
+# Copyright © 2022 Ruben Rodriguez <ruben@trisquel.org>
 #
 # 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
@@ -34,11 +35,11 @@ use parent qw(Dpkg::Vendor::Debian);
 
 =head1 NAME
 
-Dpkg::Vendor::Trisquel - Trisquel vendor object
+Dpkg::Vendor::Trisquel - Trisquel vendor class
 
 =head1 DESCRIPTION
 
-This vendor object customizes the behaviour of dpkg scripts for Trisquel
+This vendor class customizes the behaviour of dpkg scripts for Trisquel
 specific behavior and policies.
 
 =cut
@@ -46,29 +47,7 @@ specific behavior and policies.
 sub run_hook {
     my ($self, $hook, @params) = @_;
 
-    if ($hook eq 'before-source-build') {
-        my $src = shift @params;
-        my $fields = $src->{fields};
-
-        # check that Maintainer/XSBC-Original-Maintainer comply to
-        # https://wiki.ubuntu.com/DebianMaintainerField
-        if (defined($fields->{'Version'}) and defined($fields->{'Maintainer'}) and
-           $fields->{'Version'} =~ /ubuntu/) {
-           if ($fields->{'Maintainer'} !~ /ubuntu/i) {
-               if (length $ENV{DEBEMAIL} and $ENV{DEBEMAIL} =~ /\@ubuntu\.com/) {
-                   error(g_('Version number suggests Ubuntu changes, but Maintainer: does not have Ubuntu address'));
-               } else {
-                   warning(g_('Version number suggests Ubuntu changes, but Maintainer: does not have Ubuntu address'));
-               }
-           }
-           unless ($fields->{'Original-Maintainer'}) {
-               warning(g_('Version number suggests Ubuntu changes, but there is no XSBC-Original-Maintainer field'));
-           }
-        }
-
-    } elsif ($hook eq 'keyrings') {
-        return $self->run_hook('package-keyrings', @params);
-    } elsif ($hook eq 'package-keyrings') {
+    if ($hook eq 'package-keyrings') {
         return ($self->SUPER::run_hook($hook),
                 '/usr/share/keyrings/trisquel-archive-keyring.gpg');
     } elsif ($hook eq 'archive-keyrings') {
@@ -77,27 +56,12 @@ sub run_hook {
     } elsif ($hook eq 'archive-keyrings-historic') {
         return ($self->SUPER::run_hook($hook),
                 '/usr/share/keyrings/trisquel-archive-removed-keys.gpg');
-    } elsif ($hook eq 'register-custom-fields') {
-        my @field_ops = $self->SUPER::run_hook($hook);
-        push @field_ops,
-            [ 'register', 'Launchpad-Bugs-Fixed',
-              CTRL_FILE_CHANGES | CTRL_CHANGELOG  ],
-            [ 'insert_after', CTRL_FILE_CHANGES, 'Closes', 'Launchpad-Bugs-Fixed' ],
-            [ 'insert_after', CTRL_CHANGELOG, 'Closes', 'Launchpad-Bugs-Fixed' ];
-        return @field_ops;
-
-    } elsif ($hook eq 'post-process-changelog-entry') {
-        my $fields = shift @params;
-
-        # Add Launchpad-Bugs-Fixed field
-        my $bugs = find_launchpad_closes($fields->{'Changes'} // '');
-        if (scalar(@$bugs)) {
-            $fields->{'Launchpad-Bugs-Fixed'} = join(' ', @$bugs);
-        }
-
     } elsif ($hook eq 'update-buildflags') {
 	my $flags = shift @params;
 
+        # Run the Debian hook to add hardening flags
+        $self->SUPER::run_hook($hook, $flags);
+
         require Dpkg::BuildOptions;
 
 	my $build_opts = Dpkg::BuildOptions->new();
@@ -109,54 +73,27 @@ sub run_hook {
             if (Dpkg::Arch::debarch_eq($arch, 'ppc64el')) {
 		for my $flag (qw(CFLAGS CXXFLAGS OBJCFLAGS OBJCXXFLAGS GCJFLAGS
 		                 FFLAGS FCFLAGS)) {
-		    $flags->set($flag, '-g -O3', 'vendor');
+                    my $value = $flags->get($flag);
+                    $value =~ s/-O[0-9]/-O3/;
+                    $flags->set($flag, $value);
 		}
 	    }
 	}
 	# Per https://wiki.ubuntu.com/DistCompilerFlags
-	$flags->set('LDFLAGS', '-Wl,-Bsymbolic-functions', 'vendor');
-
-	# Run the Debian hook to add hardening flags
-	$self->SUPER::run_hook($hook, $flags);
+        $flags->prepend('LDFLAGS', '-Wl,-Bsymbolic-functions');
     } else {
         return $self->SUPER::run_hook($hook, @params);
     }
 
+    # Default return value for unknown/unimplemented hooks
+    return;
 }
 
-=head1 PUBLIC FUNCTIONS
-
-=over
-
-=item $bugs = Dpkg::Vendor::Ubuntu::find_launchpad_closes($changes)
-
-Takes one string as argument and finds "LP: #123456, #654321" statements,
-which are references to bugs on Launchpad. Returns all closed bug
-numbers in an array reference.
-
-=cut
-
-sub find_launchpad_closes {
-    my $changes = shift;
-    my %closes;
-
-    while ($changes &&
-          ($changes =~ /lp:\s+\#\d+(?:,\s*\#\d+)*/pig)) {
-        $closes{$_} = 1 foreach (${^MATCH} =~ /\#?\s?(\d+)/g);
-    }
-
-    my @closes = sort { $a <=> $b } keys %closes;
-
-    return \@closes;
-}
-
-=back
-
 =head1 CHANGES
 
 =head2 Version 0.xx
 
-This is a semi-private module. Only documented functions are public.
+This is a private module.
 
 =cut
 
diff --git a/helpers/make-dpkg b/helpers/make-dpkg
index 874c35f8b8ef6a85796ffe597adb8cf2d54fc08e..0fe5821cf50491e65681bd68fcaf2aebc873f2de 100644
--- a/helpers/make-dpkg
+++ b/helpers/make-dpkg
@@ -17,10 +17,11 @@
 #    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
 #
 
-VERSION=2
+VERSION=3
 COMPONENT=main
 
 . ./config
+exit
 
 cat << EOF > scripts/t/origins/trisquel
 Vendor: Trisquel